如何解决无法使用ggplot在R Shiny上的y轴标题中换行
我正在尝试在r Shiny中绘制图形,其中x轴和y轴的值来自下拉列表。
在y轴上,标题非常大,我需要包装它。但是所有wrap函数都无法正常工作。
y轴标题= thistextisnumerator / thistextisdenominator,需要显示,但我无法将其包装
**Possible y-axis titles:**
y-axis title = this text is very very long
y-axis title = this text is very long (and very large) hence going outside the plot
代码:
ggplot(data=fin,aes(x = color_var,y = ratio,fill=color_var))+
geom_boxplot()+
geom_point(aes(text = paste0(paste0("number: ",number),paste0("<br>",isolate(input$Y),": ",round(ratio,2))))) +
theme_grey(base_size=10)+
ylim(min(fin$ratio),max(fin$ratio))+
labs(title =paste0("Box Plot ",' '),y=(paste0(isolate(input$X)," / ",isolate(input$Y))),x=x_value) +
theme(axis.text.y = element_text(size=1),axis.title.y = element_text(size=1)) +
guides(fill=guide_legend(title=x_value_legend))
解决方法
您没有提供任何数据来帮助我们帮助您,因此我正在使用数据库 mtcars 构建一个虚拟图。让我们看看这是否对您有帮助:
#building dummy graph p
library(ggplot2)
p <- ggplot(mtcars,aes(x=wt,y=mpg))+geom_point()
现在,只要您似乎希望文本带有数学注释,我建议使用功能expression()
:
p + labs(y = expression(frac("thistextisnumerator","thistextisdenominator")))
这将导致下图:
如果您不希望使用该行,则可以使用以下任一代码:
p + labs(y = expression(atop("thistextisnumerator","thistextisdenominator")))
p + labs(y = expression(over("thistextisnumerator","thistextisdenominator")))
或更简单:
p + labs(y = paste0("thistextisnumerator","\n","thistextisdenominator"))
\n
是换行符。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。