首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >ggplot2画箱线图将线改成虚线

ggplot2画箱线图将线改成虚线

作者头像
用户7010445
发布2020-11-06 16:48:12
发布2020-11-06 16:48:12
3.8K00
代码可运行
举报
运行总次数:0
代码可运行

ggplot2画箱线图默认情况下所有的线都是实线,如下

代码语言:javascript
代码运行次数:0
运行
复制
ggplot(HMP,aes(x=country,y=log10(rel_crAss)))+
  geom_boxplot()

可以通过加参数linetype更改线的类型,比如改成虚线

代码语言:javascript
代码运行次数:0
运行
复制
ggplot(HMP,aes(x=country,y=log10(rel_crAss)))+
  geom_boxplot(linetype="dashed")

但是现在遇到一个问题是所有的线都变成虚线了,我想要矩形的边框变成实线,那该如何实现呢?经过搜索找到了一个解决办法 链接是 https://stackoverflow.com/questions/53170465/how-to-make-a-base-r-style-boxplot-using-ggplot2

原来有一个函数stat_boxplot()可以只画箱线图的矩形,实现代码是

代码语言:javascript
代码运行次数:0
运行
复制
ggplot(HMP,aes(x=country,y=log10(rel_crAss)))+
  stat_boxplot(aes(ymin=..lower..,ymax=..upper..))

直接把这个图形叠加到全是虚线边框的箱线图上就可以了

代码语言:javascript
代码运行次数:0
运行
复制
ggplot(HMP,aes(x=country,y=log10(rel_crAss)))+
  geom_boxplot(linetype="dashed")+
  stat_boxplot(aes(ymin=..lower..,ymax=..upper..))

添加最大值最小值的小横线

代码语言:javascript
代码运行次数:0
运行
复制
ggplot(HMP,aes(x=country,y=log10(rel_crAss)))+
  geom_boxplot(linetype="dashed",color="blue")+
  stat_boxplot(aes(ymin=..lower..,ymax=..upper..,
                   fill=country),
               color="red")+
  stat_boxplot(geom = "errorbar",aes(ymin=..ymax..),
               width=0.2,color="red")+
  stat_boxplot(geom = "errorbar",aes(ymax=..ymin..),
               width=0.2,color="green")

这个配色也是没谁了,哈哈哈!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-11-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小明的数据分析笔记本 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档