我使用ggplot2生成了以下图形
我将ggplot对象命名为finalPlot
。要添加标签,我使用了
finalPlot + stat_bin() + scale_x_continuous('Solution Cost') + scale_y_continuous('Number of Solutions')`
如何更改y轴标签的方向,使其水平显示,并且如果可能的话跨越两行,类似于
Number of
Solutions
近期版本的ggplot2语法已经发生了变化;如果您尝试上述答案,您将会得到以下错误提示:
错误:请使用“theme”代替。“(Defunct; last used in version 0.9.1)”
现在,您应该使用
finalPlot + ylab("Number of\nSolutions") + theme(axis.title.y = element_text(angle=0))
对于轴文本的旋转角度,您需要使用element_text()
。请参见此SO帖子以获取一些示例。要在两行之间进行间距,可以在字符串中添加"\n"
以放置换行符。
这将设置y轴文本的正确方向并强制换行:
finalPlot + ylab("Number of\nSolutions") +
theme(axis.title.y = element_text(angle = 0))
theme_text()
即可获取可以设置的选项列表。我猜你需要的是 title.text
。 - Paul Hiemstraaxis.title.theme.y
是用于轴标签的设置
axis.text.theme.y
是用于轴数值的设置 - Richard Williams
'opts'
已被弃用(现在是'theme'
),而theme_text()
也被弃用(改为使用'element_text'
)。 - geotheory