R语言使用USAarrests数据集绘制ggplot图表相关问题求助
问题解决方案
1. 匹配参考图的十六进制颜色
找不到对应色值时可通过取色工具直接提取参考图的色值,两种常用方案:
- 用系统自带取色工具/第三方截图取色工具,点选参考图对应位置即可得到十六进制色值
- R环境内可安装
colourpicker包,运行colourpicker::pickColour()调用交互式取色面板,导入参考图后点选对应位置就能直接获取色值
2. 修改Y轴为千分位格式、关闭科学计数法
调用scales包的comma格式化函数,在ggplot代码中添加对应y轴配置即可:
p + scale_y_continuous(labels = scales::comma)
如果需要自定义精度,比如保留0位小数,可调整为:
p + scale_y_continuous(labels = scales::comma_format(accuracy = 1))
3. 调整geom_smooth填充色的透明度
直接在geom_smooth函数中添加alpha参数即可,参数取值范围为0-1,数值越小填充色越透明,示例如下:
p = p + geom_smooth(color="Purple",lty="dashed",fill="#71F563", alpha = 0.3)
你可以根据实际显示效果调整alpha的数值,直到和参考图效果匹配。
修改后完整代码
library(ggplot2) library(scales) p=ggplot(data=examdata,aes(Assault,Population)) p=p+geom_point(size=3,color="red",shape="asterisk") # alpha取值可根据实际需求调整 p=p+geom_smooth(color="Purple",lty="dashed",fill="#71F563", alpha = 0.3) # 配置y轴千分位格式,关闭科学计数法 p=p+scale_y_continuous(labels = comma)
内容的提问来源于stack exchange,提问作者Ace123
相关产品推荐
相关产品推荐

