gpt4 book ai didi

r - ggplot 2.0.0 中的点大小

转载 作者:行者123 更新时间:2023-12-03 11:38:46 26 4
gpt4 key购买 nike

自从我更新到 ggplot 2.0.0 版以来,我在重新创建绘图时遇到了麻烦:看来我不能像以前一样减少点大小,这在具有很多点的绘图中是一个问题。
在下面的示例中,plot1 和 plot2 之间的点大小存在合理差异,plot3 中的点大小至少要小一点,但 plot3 和 plot4 之间的点大小没有差异:

df <- data.frame(x=1:10, y=runif(10))
pl <- ggplot(df) +
geom_point(aes(x,y), size=1)
ggsave("plot1.png", plot=pl, width=14, height=7, units="cm", dpi=1200 )

pl <- ggplot(df) +
geom_point(aes(x,y), size=0.1)
ggsave("plot2.png", plot=pl, width=14, height=7, units="cm", dpi=1200 )

pl <- ggplot(df) +
geom_point(aes(x,y), size=0.01)
ggsave("plot3.png", plot=pl, width=14, height=7, units="cm", dpi=1200 )

pl <- ggplot(df) +
geom_point(aes(x,y), size=0.001)
ggsave("plot4.png", plot=pl, width=14, height=7, units="cm", dpi=1200 )

在以前版本的 ggplot2 中,我使用了 0.25 的点大小,它看起来比现在小得多,这就是为什么我尝试使用新的 ggplot2 版本进一步减小它。我是否错过了新版本代码的更改?在文档中找不到任何内容...

最佳答案

好的,我找到了解决方案。正如@henrik 和@silkita 所指出的,在最新的 ggplot2 版本中,默认形状已从 16 更改为 19。正如您在文档中看到的(例如 here ),形状 '19' 比 '16' 稍大。但这并不是 2.0.0 版本中“点”变大的原因。查看geom-point.R的ggplot2源码对于最新版本,我们可以看到:

default_aes = aes(
shape = 19, colour = "black", size = 1.5, fill = NA,
alpha = NA, stroke = 0.5
)

而在之前的版本中,它是:
default_aes <- function(.) aes(shape=16, colour="black", size=2, fill = NA, alpha = NA)

然后,要像以前一样有小点,我们应该放 stroke到零。总而言之,要获得您应该编写的最小点:
geom_point(size = 0.1) # ggplot2 before 2.0.0
geom_point(size = 0.1, stroke = 0, shape = 16) # ggplot2 2.0.0

顺便说一下,当处理最小的点时,使用不同的形状没有区别(一个像素仍然是一个像素)。

更新 :正如 Hadley Wickham 在 Twitter 上指出的,此更改在 release notes 中进行了解释。

关于r - ggplot 2.0.0 中的点大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34638902/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com