我在使用R环境下的ggplot2创建hexbin密度图时,总是会看到一些奇怪的白色水平虚线,它们似乎出现在垂直相邻六边形之间的边框上。这种情况在不同电脑、不同版本的MS Windows和不同的显卡驱动程序上多次复现,这明显是一个(bug)问题。我不知道如何摆脱这些虚线。
下面是显示问题的图表以及生成该图表的代码。
这是一个已知问题吗?有没有什么提示可以解决这个问题?非常感谢您的帮助!
## Load libraries
library(ggplot2)
library(hexbin)
## Create some data
set.seed(222)
myx <- data.frame(x = 0.4 + rnorm(10000, mean = 0, sd = 0.1))
myy <- data.frame(y = 0.5 + rnorm(10000, mean = 0, sd = 0.1))
MyData <- data.frame(xvariable=myx$x*100, yvariable=myy$y*100)
## Prepare the plot window
dev.off(2)
windows.options(width=6, height=6)
op <- par(mfrow = c(1,1))
op <- par(oma = c(0,0,0,0) + 0.1,
mar = c(5.1, 5.1, 4.1, 2.1))
## Creaate the plot
ggplot(MyData, aes(x=xvariable, y=yvariable) ) +
geom_hex(bins=66) +
xlim(0, 100) +
ylim(0, 100) +
ggtitle("My plot") +
scale_fill_continuous(type = "viridis") +
theme_bw() +
theme(plot.title = element_text(color="black", size=17, face="bold"),
axis.title.x = element_text(color="black", size=17, face="bold"),
axis.title.y = element_text(color="black", size=17, face="bold"),
axis.text=element_text(color="black", size=15, face="bold"),
legend.title = element_text(color = "black", size = 15),
legend.text = element_text(color = "black", size=12),
legend.position = c(0.9,0.2), legend.direction = "vertical")
ggplot2
或hexbin
有关。实际上,如果我运行您的代码并调整绘图窗口大小,线条会移动、数量会改变或完全消失,类似于其他光栅图像的伪影。当我将其保存为PDF时,这些线条总是丢失的(在我的测试中)。如果您能够切换到基于矢量的图形格式(例如pdf、svg),那么也许这是您前进的最佳方式。 - r2evans