2016-01-15 13 views
5

Próbuję wygenerować wykres z szacunkami i przedziałami ufności z tej samej regresji dla wielu krajów. Przebiegłem regresje, używając dplyr 's group_by(country), a następnie zagregowałem wszystkie wyniki w ramkę danych z broom' s tidy().ggplot2: geom_pointrange() facet_grid() z coord_flip() i wolnymi skalami

Podczas tworzenia wykresu z tej ramki danych (tzw bycountry1), uruchomić poniższy kod:

ggplot(bycountry1, aes(x = country, y = estimate, ymin = estimate - std.error * 2, ymax = estimate + std.error * 2)) + 
    geom_hline(yintercept = 0, colour = "black", lty = 2) + 
    geom_pointrange() + 
    coord_flip() + facet_grid(. ~ term, scales = "free") 

here is the graph I get

To jest to, co chcę, oprócz tego, że chciałbym mieć Skale dla każdego pudełka mają być różne, tak aby wszystkie z nich wyglądały bardziej jak pudełko religious1. Ponieważ jest to najbardziej zmienny, dominuje on w skali, a następnie w większości innych pól nie można zobaczyć wariancji. Jak pokazuje powyższy kod, wskazałem scales = "free" w facet_grid() i wypróbowałem wszystkie warianty, również z facet_wrap(), i nie mogę tego uruchomić.

+2

Jak na temat korzystania 'geom_errorbarh' zamiast' coord_flip' aby uzyskać poziome paski o błędach? – aosmith

+0

To dobry pomysł. Dzięki! Próbowałem już wcześniej i nie wyglądało wspaniale, ale właśnie zobaczyłem, że możesz zmodyfikować 'wysokość'' geom_errorbarh', a także dodać 'geom_point', aby uzyskać dokładnie to, czego szukałem. Teraz dodam odpowiedź z twoją sugestią. Dzięki jeszcze raz! –

Odpowiedz

3

Podążając za sugestią aosmith, zrobiłem to za pomocą geom_errorbarh i usunięcie coord_flip(). Musiałem również ustawić height z geom_errorbarh na 0 i dodać geom_point dla oszacowania. Oto kod:

ggplot(bycountry1, aes(y = country, x = estimate, xmin = estimate - std.error * 2, xmax = estimate + std.error * 2)) + 
    geom_vline(xintercept = 0, colour = "black", lty = 2) + 
    geom_point() + 
    geom_errorbarh(height = 0) + 
    facet_grid(. ~ term, scales = "free") 

i uzyskany obraz

enter image description here

Powiązane problemy