2017-08-22 52 views
3

當我保存ggplot數字時 - 無論是否使用ggsave()png() - 小平面標籤顯得模糊不清。例如,下面的代碼會生成一個如下圖所示的facet標籤'F',並在文本柵格的外部像素上着色。ggplot2:模糊刻面標籤

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

enter image description here

預先感謝任何建議!

PS - 根據@ Brian的要求,我正在更新這篇文章,注意我使用的是Windows機器。

PPS - 我再次更新我的文章,這次澄清我打算將該圖插入到Word中。所以根據@Masoud指出的this post的建議#4,我想使用基於像素的格式(例如PNG)而不是基於矢量的格式(例如PDF)。

+0

那個軸線呢? ls或其他文字?如果你使用'ggsave(「foo.pdf」)'?那麼'ggsave(「foo.png」,dpi = 600)'? – Brian

+0

https://www.r-bloggers.com/high-resolution-figures-in-r/ – Masoud

+0

https://danieljhocking.wordpress.com/2013/03/12/high-resolution-figures-in-r/ – Masoud

回答

2

檢查的具體嘗試禁用抗鋸齒

默認(石英): enter image description here

ggsave('foo.png', antialias="none")enter image description here

+0

要添加到此答案,您可以在'?png'和'?windows'中找到選項,它們被傳遞到'ggsave'。 – Brian

+0

Thanks @baptiste! – Mariel

1

儘量保存爲基於矢量的格式一樣.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

+0

謝謝@giac_man。我同意PDF看起來不錯,但PDF不適合我的特殊用途;我需要一個可以插入Word的png/jpeg/tiff。對不起,我原來的帖子不清楚這件事。 – Mariel

+0

您可以選擇不同的輸出格式。例如,.eps可以作爲Word中的圖像插入。我已經更新了我的答案。 –

+0

我無法使用基於矢量的圖形與Word一起播放。根據[本文]中的建議#4(http://blog.revolutionanalytics.com/2009/01/10-tips-for-making-your-r-graphics-look-their-best.html),@Masoud指出我,如果可能的話,我寧願使用基於像素的格式。 – Mariel