2010-09-10 5 views
29

В следующем примере, как мне получить пределы оси Y для масштабирования в соответствии с данными на каждой панели?ggplot2, facet_grid, свободные весы?

mt <- ggplot(mtcars, aes(mpg, wt, colour = factor(cyl))) + geom_point() 

Ни один из них будет делать это:

mt + facet_grid(. ~ cyl, scales="free") 
mt + facet_grid(. ~ cyl, scales="free_y") 

ответ

28

Возможно, это потому, что у вас есть только одна ось у, используя свой путь. Вы попробовали что-то вроде этого?

mt + facet_grid(cyl ~ ., scales="free") 
+2

я вижу - так это не масштаб каждой панели по по строкам или столбцам ... в случае facet_wrap() также работает I Угадай. – hatmatrix

+0

Как насчет печати одних и тех же данных, но usign barplots? Я спросил только это [здесь] (http://stackoverflow.com/questions/29262916/how-i-get-a-facet-grid-plot-with-free-scales-and-barplots-with-ggplot2) – Juan

+7

I чувствуйте, что это не решает проблему. У меня такая же проблема, и все «цил». был перевернут топоры. Теперь ось x - это то, что я хочу быть свободным, но это не бесплатно. Я использую R версии 3.2.3 с ggplot2 версии 2.1.0. – landau

8

Вы не можете. См here

Вы можете использовать facet_wrap вместо, который будет «свободный» обе оси

+0

Работал, спасибо @ jf328 – RancheroBeans

Смежные вопросы