【问题标题】:chart labels don't scale when saving ggplot保存ggplot时图表标签不缩放
【发布时间】:2017-10-23 22:12:19
【问题描述】:

长期阅读,第一次提问!

我正在尝试使用ggsave 命令从 ggplot 中保存一堆绘图,但标签并未与绘图大小成比例地调整。

例如,使用 iris 数据集:

data(iris)

iris$study.number <- sample(1:5, replace=T)

ggplot(iris) + aes(x=study.number, fill=Species) +
  geom_bar(position="stack") 

ggsave("iris.png", scale=3)

虽然保存的图像中的绘图比查看器中显示的大三倍,但标签仍然非常小。我试过只是操纵长度和宽度参数,但无济于事。

如果可能的话,我更喜欢使用ggsave(它比保存绘图的其他选项要容易得多,但如果只能使用其他方法,我绝对愿意接受。

【问题讨论】:

    标签: r ggplot2


    【解决方案1】:

    图表标签的缩放方式与其他绘图元素的缩放方式不同。一种解决方法是修改 ggplot 本身的文本大小。例如:

    library(ggplot2)
    data(iris)
    
    iris$study.number <- sample(1:5, replace=T)
    
    ggplot(iris) + aes(x=study.number, fill=Species) +
        geom_bar(position="stack") +
        theme(text = element_text(size = 60))
    
    ggsave("iris.png", scale=3)
    

    theme(text = element_text(size = 60)) 行增加了所有标签的字体大小。

    【讨论】:

    • 您是否知道对于适当的尺寸与规模,一个好的计算可能是什么,还是我必须修补?我觉得这可能是答案,但是像这样增加文本大小会使预览图毫无用处。
    • 恐怕我对此没有任何建议。在创建绘图时,我经常遇到这个问题,我已经学会了不再看绘图预览器。您可以尝试打开一个具有指定宽度和高度的新窗口(在窗口上您可以使用x11(width, height))。只要那个新窗口是活动的图形设备,绘图就会在那里绘制。也许这会加快修补速度。
    猜你喜欢
    • 2015-09-17
    • 1970-01-01
    • 2023-02-16
    • 2018-02-27
    • 1970-01-01
    • 1970-01-01
    • 2021-12-06
    • 1970-01-01
    • 2017-05-19
    相关资源
    最近更新 更多