R ggplot中的控制点边界厚度
当使用ggplot时,我可以将R ggplot中的控制点边界厚度,r,ggplot2,border,point,thickness,R,Ggplot2,Border,Point,Thickness,当使用ggplot时,我可以将形状设置为21-25,以获得内部(填充)和边框(列)颜色具有独立设置的形状,如下所示: df <- data.frame(id=runif(12), x=1:12, y=runif(12)) ggplot(df, aes(x=x, y=y)) + geom_point(aes(fill=id, size=id), colour="black", shape=21) 如何控制边界厚度?感觉有点粗糙,但您可以添加一组“背景”点,其大小设置为美学贴图加上一
形状设置为21-25,以获得内部(填充
)和边框(列
)颜色具有独立设置的形状,如下所示:
df <- data.frame(id=runif(12), x=1:12, y=runif(12))
ggplot(df, aes(x=x, y=y)) +
geom_point(aes(fill=id, size=id), colour="black", shape=21)
如何控制边界厚度?感觉有点粗糙,但您可以添加一组“背景”点,其大小设置为美学贴图加上一些小常量以放大点的边界。使用常量获得所需的边框宽度
您还必须禁用大小图例,以停止在图形上显示图例
ggplot(df, aes(x=x, y=y)) +
geom_point(aes(size=id+0.5), colour="black" , show_guide = FALSE )+
scale_size( guide = "none" )+
geom_point(aes(fill=id, size=id), colour="black", shape=21)
另一种解决方案是在R中创建绘图,然后将其导出为.svg文件。然后可以使用矢量图形编辑软件(如Inkscape)更改线宽。此方法在数据点重叠时特别有用。从ggplot2的2.0.0版开始,有一个控制点边界厚度的参数。从NEWS.md
文件:
geom_point()获得笔划美学,控制形状21-25的边界宽度(#1133,@SeySayux)。尺寸和冲程是相加的,因此尺寸=5且冲程=5的点的直径为10mm。(#1142)
因此,正确的解决方案是:
df <- data.frame(id=runif(12), x=1:12, y=runif(12))
ggplot(df, aes(x=x, y=y)) +
geom_point(aes(fill=id, size=id), colour="black", shape=21, stroke = 2)
df可能是哈奇,但哈德利在他的网站上认可了这种方法Twitter@NoamRoss你有这个链接吗?你能添加输出吗?为了将来的兼容性和清晰性,最好说“从版本x.xx开始”,而不是“最新版本”。有没有一种方法可以根据变量控制笔划的厚度?类似于“缩放-笔划-手册”的内容?作为对我以上评论的回应,我们可以使用缩放-离散-手册。请参阅此处的链接:您知道为什么stroke=0仍然以PDF格式绘制,而不是PNG格式吗?
df <- data.frame(id=runif(12), x=1:12, y=runif(12))
ggplot(df, aes(x=x, y=y)) +
geom_point(aes(fill=id, size=id), colour="black", shape=21, stroke = 2)