2012-04-08 4 views
7

У меня есть следующий график, который я сгенерированный с помощью ggplot2 enter image description hereКак повернуть метки оси в ggplot2?

я имел finalPlot как объект ggplot. Для того, чтобы добавить метки я

finalPlot + stat_bin() + scale_x_continuous('Solution Cost') + scale_y_continuous('Number of Solutions')` 

Как я могу изменить ориентацию этикетки у оси, чтобы сделать вид горизонтальной и, если это возможно диапазон его на две строки, как

Number of 
Solutions 
+2

Насколько я могу видеть ответ ниже является устаревшим, так как ' 'opts'' является устаревшим (теперь '' theme''), как 'theme_text()' (для '' element_text''). – geotheory

ответ

5

Для угла поворота вам нужно использовать element_text(). Для некоторых примеров см. this post on SO. Для расстояния между двумя строками я бы добавил "\n" в месте в строке, где вы хотите поместить новую строку.

Это позволит установить правильную ориентацию текста у оси и форсирует разрыв строки:

finalPlot + ylab("Number of\nSolutions") + 
    theme(axis.title.y = element_text(angle = 0)) 
+0

Нет, это не то, что я хочу. Это изменяет ориентацию тиков. Я хочу повернуть метку оси, а не метку тика оси – Ankit

+0

Возможно, вы можете принять это решение и легко адаптировать его к своей ситуации ... –

+0

Но я не знаю, какие будут соответствующие параметры :( – Ankit

13

Синтаксис изменился в последних версиях ggplot2; если вы попытаетесь ответ выше, вы получите

Error: Use 'theme' instead. (Defunct; last used in version 0.9.1)

В эти дни вы должны использовать

finalPlot + ylab("Number of\nSolutions") + theme(axis.title.y = element_text(angle=0))