【问题标题】:ggplot2: blurry facet labelsggplot2:模糊的刻面标签
【发布时间】:2017-08-22 15:00:28
【问题描述】:

当我保存ggplot 图形时——无论我使用ggsave() 还是例如png() -- 分面标签看起来很模糊。例如,下面的代码生成一个分面标签“F”,如下图所示,在文本光栅的外部像素上带有颜色。

ggplot(data.frame(x=1, y=1, f='F'), aes(x, y)) +
    facet_grid(. ~ f)
ggsave('foo.png')

提前感谢您的任何建议!

PS -- 根据@Brian 的要求,我正在更新这篇文章,以说明我使用的是 Windows 机器。

PPS -- 我再次更新我的帖子,这次是为了澄清我计划将图形插入 Word。因此,根据@Masoud 指出的this post 的建议#4,我想使用基于像素的格式(例如PNG)而不是基于矢量的格式(例如PDF)。

【问题讨论】:

  • 轴标签或其他文本呢?如果你使用ggsave("foo.pdf") 会怎样? ggsave("foo.png", dpi = 600) 呢?
  • @Brian,我同意 PDF 看起来很棒,但 PDF 不适用于我的特定目的;我需要一个可以插入 Word 的 png/jpeg/tiff。很抱歉在我的原始帖子中没有明确说明这一点。
  • @Masoud,我尝试使用替代功能并按照您链接到的帖子中的建议提高分辨率,但文本光栅外部像素的颜色仍然存在。

标签: r ggplot2 label facet


【解决方案1】:

尝试禁用抗锯齿

默认(石英):

ggsave('foo.png', antialias="none"):

【讨论】:

  • 要添加到这个答案,您可以在?png?windows 中找到选项,它们被传递到ggsave
  • 谢谢@baptiste!
【解决方案2】:

尝试另存为基于矢量的格式,例如.eps:

ggplot(data.frame(x=1, y=1, f='F'), aes(x, y)) +
  facet_grid(. ~ f)
ggsave('foo.eps', device = 'eps')

或者,您可以将图像保存为 .jpeg 并使用选项 dpi 增加每英寸点数。

ggplot(data.frame(x=1, y=1, f='F'), aes(x, y)) +
  facet_grid(. ~ f)
ggsave('foo.jpeg', device = 'jpeg',dpi = 5000)

有多种更高质量的格式,您可以通过运行?ggsave查看详细信息

【讨论】:

  • 谢谢@giac_man。我同意 PDF 看起来很棒,但 PDF 不适用于我的特定目的;我需要一个可以插入 Word 的 png/jpeg/tiff。很抱歉在我的原始帖子中没有明确说明这一点。
  • 您可以选择不同的输出格式。例如 .eps 可以作为图像插入 Word。我已经更新了我的答案。
  • 我无法让基于矢量的图形与 Word 完美配合。根据@Masoud 向我指出的this post 的建议#4,如果可能的话,我更愿意使用基于像素的格式。
  • 恐怕这是与 Word 而不是 R 相关的问题。我想我已经回答了你原来的问题。如果您想要出版质量的图像,您应该使用 pdf 或矢量图像。
  • 谢谢,@giac_man。我将更新帖子以澄清我计划将图形嵌入到 Word 文档中。再次抱歉,最初并不清楚这一点。我不认为这是一个Word问题。如果我直接打开 ggsave() 或 png() 生成的 png,即使我没有使用 Word 打开图形,文本光栅外部像素上的着色也是可见的。
猜你喜欢
  • 2015-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多