控制R scatterplot中点的大小?
在R中, plot()
函数使用一个pch
参数来控制图中点的外观。 我正在制作数万个点的散点图,并且select一个小点,但不是太小的点。 基本上,我觉得pch='.'
太小,但是pch=19
太胖了。 有什么中间或某种方式来缩小点?
尝试cex
参数:
?par
-
cex
给出文本和符号的绘图量应相对于默认值放大的数值。 请注意,某些graphics函数(如plot.default)具有此名称的参数,该参数会将此graphics参数相乘,并且某些函数(如点)会接受一个循环值的向量。 如果提供长度大于1的vector,其他用途将只取第一个值。
pch = 20返回一个大小在 “。” 之间的符号。 和19。
这是一个填充符号(这可能是你想要的)。
除此之外,即使R中的基本graphics系统也允许用户对符号大小,颜色和形状进行细粒度的控制。 例如,
dfx = data.frame(ev1=1:10, ev2=sample(10:99, 10), ev3=10:1) with(dfx, symbols(x=ev1, y=ev2, circles=ev3, inches=1/3, ann=F, bg="steelblue2", fg=NULL))
正如rcs所说, cex
将在基本graphics包中完成这项工作。 我认为,你不愿意在ggplot2
做你的图,但如果你这样做,有一个size
美学属性,你可以很容易地控制( ggplot2
有用户友好的函数参数:而不是键入cex
(字符扩展),在ggplot2
你可以键入例如size = 2
,你会得到2毫米点)。
这是一个例子:
### base graphics ### plot(mpg ~ hp, data = mtcars, pch = 16, cex = .9) ### ggplot2 ### # with qplot() qplot(mpg, hp, data = mtcars, size = I(2)) # or with ggplot() + geom_point() ggplot(mtcars, aes(mpg, hp), size = 2) + geom_point() # or another solution: ggplot(mtcars, aes(mpg, hp)) + geom_point(size = 2)