gpt4 book ai didi

r - 包装图例文本以适合绘图窗口

转载 作者:行者123 更新时间:2023-12-04 11:36:37 26 4
gpt4 key购买 nike

我正在使用ggplot绘制一些数据图表,并且我注意到图例文本非常长且不适合窗口。

+ opts(legend.position = 'bottom', legend.direction = 'horizontal', size=0.1)  +
guides(colour = guide_legend(nrow = 3), size=1)

ggplot中是否有选项来包装图例文本以适合窗口。

最佳答案

据我所知,因此我采取了一种使用strwidth()的变通方法,该方法可计算基本图形中的文本宽度。

title <- "This is a really excessively wide title for a plot, especially since it probably won't fit"
使用 par("din")来获取设备的宽度,并使用 strwidth()来计算文本大小:
par("din")[1]
[1] 8.819444
strwidth(title, units="inches")
[1] 11.47222
在函数中使用它并进行绘制:
wrapTitle <- function(x, width=par("din")[1]){
xx <- strwrap(x, width=0.8 * nchar(x) * width / strwidth(x, units="inches"))
paste(xx, collapse="\n")
}

wrapTitle(title)
[1] "This is a really excessively wide title for a plot, especially since it\nprobably won't fit, meaning we somehow have to wrap it"
剧情:
ggplot(mtcars, aes(wt, mpg)) + geom_point() + opts(title=wrapTitle(title))

如果要将图保存到文件,则可以将 par("din")替换为实际保存的图尺寸。

关于r - 包装图例文本以适合绘图窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12093927/

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