给大家介绍一个比较有意思的图—小提琴图。为什么叫小提琴图呢?因为图形酷似小提琴。小提琴图并不常见,但在恰当的时候使用一下,会大大增加可视化效果,可以说是艺术与理性的完美结合
小提琴图可以看成箱线图与核密度图的结合,同时表达了分位数和密度,又不失艺术性,在进行多类别数据分布对比的时候,是个非常好的选择,下面教大家怎么用ggplot2画小提琴图,当然,R语言中还有一个包vioplot可以画,大家自行研究,比较简单。
面开始画图:
#设置工作空间
setwd("C:/Users/wuzhengxiang/Desktop/R语言可视化/小提琴图")
#安装与加载包
install.packages('ggplot2')
library(ggplot2)
#抽样部分数据
dsmall = diamonds[sample(nrow(diamonds),5000),]
#直接画图
ggplot(dsmall,aes(x=clarity,y=table,fill=clarity))+geom_violin(alpha=0.8,width=1)
#图形美化
ggplot(dsmall,aes(x=clarity,y=table,fill=clarity))+
geom_violin(alpha=0.9999,width=1)+
theme_bw()+
theme(panel.background = element_rect(fill = "black"))+
theme(legend.position = 'none')+# 去掉图例
theme(panel.border = element_blank())+# 去掉外层边框
theme(panel.background = element_rect(fill = "gray91"))+ #灰色背景
theme(panel.grid=element_blank())+
scale_fill_discrete(c=100, l=100)
ggsave('violin-02.png',dpi = 1080)#保存图片
#添加扰动点
ggplot(dsmall,aes(x=clarity,y=table,fill=clarity))+
geom_violin(alpha=0.9999,width=1)+
theme_bw()+
geom_jitter(colour='white')+
theme(panel.background = element_rect(fill = "black"))+
theme(legend.position = 'none')+# 去掉图例
theme(panel.border = element_blank())+# 去掉外层边框
theme(panel.background = element_rect(fill = "black"))+ #黑色背景
theme(panel.grid=element_blank())+
scale_fill_discrete(c=100, l=100)
ggsave('violin-03.png',dpi = 1080)#保存图片
#更换数据看看
ggplot(dsmall,aes(x=clarity,y=price,fill=clarity))+
geom_violin(alpha=0.95,width=1)+
geom_jitter(alpha=0.5)+
theme_bw()+
theme(panel.background = element_rect(fill = "black"))+
theme(legend.position = 'none')+# 去掉图例
theme(panel.border = element_blank())+# 去掉外层边框
theme(panel.background = element_rect(fill = "gray91"))+ #灰色背景
theme(panel.grid=element_blank())+
scale_fill_discrete(c=100, l=100)
ggsave('violin-04.png',dpi = 1080)#保存图片
#极坐标下的小提琴图
ggplot(dsmall,aes(x=clarity,y=table,fill=clarity))+
geom_violin(alpha=0.95,width=1)+
theme_bw()+
coord_polar()+
theme(legend.position = 'none')+
scale_fill_discrete(c=100, l=100)
ggsave('violin-05.png',dpi = 1080)#保存图片
Python或R学习
ID:Python_R_wu
领取专属 10元无门槛券
私享最新 技术干货