gpt4 book ai didi

r - 使用ggplot添加动态字幕

转载 作者:行者123 更新时间:2023-12-03 00:12:52 25 4
gpt4 key购买 nike

我正在尝试使用 ggplot 添加字幕。这里提出了类似的问题:How to add a ggplot2 subtitle with different size and colour? ,答案如下:

p <- p + ggtitle(expression(atop(paste('TITLE'), atop(italic(paste('SUBTITLE')), ""))))

但是,单词 'TITLE''SUBTITLE' 需要进行硬编码,在处理数千个绘图时会出现可扩展性和自动化问题。

这不起作用:

plot.title = 'TITLE'
plot.subtitle = 'SUBTITLE'
p <- p + ggtitle(expression(atop(paste(plot.title), atop(italic(paste(plot.subtitle)), ""))))

我想如何使用这个想法正确添加动态字幕的问题可以归结为:是否可以在表达式内部和顶部使用字符变量?

最佳答案

您应该使用函数 bquote() 而不是 expression() 来使用存储为变量的标题。变量名应该放在 .()

plot.title = 'TITLE'
plot.subtitle = 'SUBTITLE'

ggplot(mtcars,aes(disp,mpg))+geom_point()+
ggtitle(bquote(atop(.(plot.title), atop(italic(.(plot.subtitle)), ""))))

enter image description here

更新 - ggplot2 版本 2.2.1

最新的ggplot2版本现在可以直接生成字幕,因此您不必使用bquote()expression()。结果是通过函数 labs() 的参数 subtitle = 实现的。

ggplot(mtcars,aes(disp,mpg))+geom_point()+
labs(title = plot.title,subtitle = plot.subtitle) +
theme(plot.subtitle = element_text(face = "italic"))

关于r - 使用ggplot添加动态字幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19957536/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com