在高 DPI 4K 显示器上,Windows 下的 RStudio 绘图窗口似乎使用像素加倍来使绘图清晰(我使用的是 RStudio 0.99.483 和 R 3.2.2 以及 Windows 8.1,但在 Windows 10 下结果相同)。这会导致文本和图形非常模糊(而且与 Cleartype 配合效果不佳,因为它会在像素加倍后导致彩色边纹)。
Example:
qplot(Sepal.Length, Petal.Length, data = iris, color = Species,
size = Petal.Width, alpha = I(0.7))
with zoom in RStudio set to 200% gives me a fuzzy image (with colour fringing) like
Zooming out completely in turn gives me a sharp image, but with far too small text, plot symbols & menu items:
有人可以推荐解决这个问题的方法吗?
RStudio 在内部使用什么 Web 浏览器来显示绘图窗口?在这方面可以解决什么问题吗?应该在什么水平上解决这个问题? RStudio 或 R 本身(在grDevices
or grid
??)。只是不太确定可以在什么级别进行修补......有什么想法吗?
编辑:使用
windows()
qplot(Sepal.Length, Petal.Length, data = iris, color = Species,
size = Petal.Width, alpha = I(0.7))
gives me a sharp image :
但令人烦恼的是,默认窗口非常小(是普通显示器的两倍,面积的四分之一),并且如果我缩放它,文本的大小将相对于其余部分发生变化(指定 width=XXX 和 height=XX 具有相同的效果)。所以这又回到了我在缩放 R 图时一直遇到的问题。 https://stackoverflow.com/questions/31381066/r-function-to-make-plot-symbols-line-widths-and-text-in-ggplot2-lattice-and-b :-)
使用附加选项xpinch
and ypinch
在 Windows 中,调用使我的窗口变大,例如:
windows(xpinch=340, ypinch=340)
qplot(Sepal.Length, Petal.Length, data = iris, color = Species,
size = Petal.Width, alpha = I(0.7))
但字体似乎没有按照相对于其余部分应有的方式缩放,并且绘图符号变得稍大(绘图画布虽然似乎已经缩放正常,但线宽却没有缩放)。不确定问题出在哪里——是否ggplot2
or grid
输出应该更好地适应xpinch
and ypinch
的设置windows()
设备,或者是否是更低级别的东西。x11()
似乎没有任何 dpi 设置,而quartz()
确实(参数dpi=...
) - 虽然我无法测试后者,因为我没有 Mac...我猜问题的一部分是这些不同的设备似乎没有一致的设置来指定 dpi,所以也许它们并不奇怪特定软件包严重考虑了...不确定 RStudio 图形设备...
简而言之,似乎很难在具有不同 dpi 的不同图形设备上制作具有良好且可重复缩放的 R 图形...除了导出为 PDF 并查看之外,还有什么想法吗?