这篇文章主要介绍“怎么使用ggplot2实现玫瑰气泡图”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用ggplot2实现玫瑰气泡图”文章能帮助大家解决问题。图表整体难度中等,使用ggplot2来写代码,主要考察关于极坐标转换与应用。(ggplot2系统中,两个较为高阶的用法分别为:极坐标系、地理空间的多边形填充)。#加载包:library(“ggplot2”)library(“tidyr”)library(“ggthemes”)library(“dplyr”)library(“Cairo”)library(“showtext”)#载入字体:font.add(“myfontl”,”msyhl.ttc”)font.add(“myfont”,”msyh.ttc”)font.add(“myfzhzh”,”方正正粗黑简体.TTF”)#锁定文件临时目录:setwd(“D:/R/File”)#导入数据circle_bubble仔细观察该图,你会发现,玫瑰图内侧并非底边对齐,而是靠上下中心对齐,要想做到这种效果,必须将一个 细分维度转化为负值(柱形图堆积时会自动将负值堆积在负坐标轴上)。circle_bubble$Government
level
circle_bubble$State
筛选出制作堆积条形图的数据源:
circle_data% select(State,Government,Family,Youself) %>% gather(Class,Value,-State)circle_data$Class
#构造三个序列的气泡图数据:circle_point
circle_point_data
circle_point_data$Class
#构造气泡图模拟Y轴:circle_point_data
mood_y
mood_y[Class==”General”]
mood_y[Class==”Very”]
mood_y[Class==”Raito”]
#构造模拟气泡大小circle_point_data$Value_y(这里没有使用气泡图对应真实值作为气泡大小,而是将除Raito系列之外的两个序列真实值缩小了70%,这么做的目的是为了整体的气泡大小比例显示更为匀称和谐,因为Ratio序列是单值序列,其与自身的100%单位标度比较,剩余两个序列相互比较)。#构造模拟标签位置circle_data
label_y
label_y[Class==”Government”]
label_y[Class==”Family”]
label_y[Class==”Youself”]
#极坐标化前的柱形图:ggplot()+geom_linerange(data=circle_bubble,aes(x=State,ymin=-150,ymax=140),size=.25,color=”#D8E5F2″,alpha=0.8)+geom_col(data=circle_data,aes(x=State,y=Value,fill=Class),width=1,colour=”white”,size=.25)###极坐标化前的柱形图和气泡图ggplot()+geom_linerange(data=circle_bubble,aes(x=State,ymin=-150,ymax=140),size=.25,color=”#D8E5F2″,alpha=0.8)+geom_col(data=circle_data,aes(x=State,y=Value,fill=Class),width=1,colour=”white”,size=.25)+geom_point(data=circle_bubble,aes(State,y=140),size=40,colour=”#FEFCD3″,alpha=.8)+geom_point(data=circle_point_data,aes(State,y=mood_y,size=Value_y,colour=Class))+geom_text(data=circle_data,aes(x=State,y=label_y,group=Class,label=abs(Value)),family=”myfont”,colour=”white”,size=5)+geom_text(data=filter(circle_point_data,mood_y==-150),aes(x=State,y=mood_y,label=Value),family=”myfontl”,colour=”#AA1A66″,size=4)+geom_text(data=filter(circle_point_data,mood_y==-100),aes(x=State,y=mood_y,label=Value),family=”myfontl”,colour=”#A31067″,size=4)+geom_text(data=filter(circle_point_data,mood_y==140),aes(x=State,y=mood_y,label=Value),family=”myfontl”,colour=”#F29E4A”,size=5)#极坐标化后的柱形图和气泡图(完整标签版)ggplot()+geom_linerange(data=circle_bubble,aes(x=State,ymin=-150,ymax=140),size=.25,color=”#D8E5F2″,alpha=0.8)+geom_col(data=circle_data,aes(x=State,y=Value,fill=Class),width=1,colour=”white”,size=.25)+geom_point(data=circle_bubble,aes(State,y=140),size=40,colour=”#FEFCD3″,alpha=.8)+geom_point(data=circle_point_data,aes(State,y=mood_y,size=Value_y,colour=Class))+geom_text(data=circle_data,aes(x=State,y=label_y,group=Class,label=abs(Value)),family=”myfont”,colour=”white”,size=5)+geom_text(data=filter(circle_point_data,mood_y==-150),aes(x=State,y=mood_y,label=Value),family=”myfontl”,colour=”#AA1A66″,size=4)+geom_text(data=filter(circle_point_data,mood_y==-100),aes(x=State,y=mood_y,label=Value),family=”myfontl”,colour=”#A31067″,size=4)+geom_text(data=filter(circle_point_data,mood_y==140),aes(x=State,y=mood_y,label=Value),family=”myfontl”,colour=”#F29E4A”,size=5)+scale_fill_manual(values=c(“#FA844F”,”#BDCCD4″,”#00C4B5″))+scale_colour_manual(values=c(“#FAC0A1″,”#F35C57″,”#FBEB1B”))+labs(title=”各国人民n对于养老的态度”)+scale_size_area(max_size=34.8)+coord_polar()#最终成品图:CairoPNG(file=”circle_bubble.png”,width=1000,height=1000)showtext.begin()ggplot()+geom_linerange(d 香港云主机ata=circle_bubble,aes(x=State,ymin=-150,ymax=140),size=.25,color=”#D8E5F2″,alpha=0.8)+geom_col(data=circle_data,aes(x=State,y=Value,fill=Class),width=1,colour=”white”,size=.25)+geom_point(data=circle_bubble,aes(State,y=140),size=40,colour=”#FEFCD3″,alpha=.8)+geom_point(data=circle_point_data,aes(State,y=mood_y,size=Value_y,colour=Class))+geom_text(data=circle_data,aes(x=State,y=label_y,group=Class,label=abs(Value)),family=”myfont”,colour=”white”,size=5)+geom_text(data=filter(circle_point_data,mood_y==-150),aes(x=State,y=mood_y,label=Value),family=”myfontl”,colour=”#AA1A66″,size=4)+geom_text(data=filter(circle_point_data,mood_y==-100),aes(x=State,y=mood_y,label=Value),family=”myfontl”,colour=”#A31067″,size=4)+geom_text(data=filter(circle_point_data,mood_y==140),aes(x=State,y=mood_y,label=Value),family=”myfontl”,colour=”#F29E4A”,size=5)+scale_fill_manual(values=c(“#FA844F”,”#BDCCD4″,”#00C4B5″))+scale_colour_manual(values=c(“#FAC0A1″,”#F35C57″,”#FBEB1B”))+labs(title=”各国人民n对于养老的态度”)+scale_size_area(max_size=34.8)+coord_polar()+ylim(-250,150)+guides(colour=FALSE,size=FALSE,fill=FALSE)+theme_map() %+replace%theme(plot.title=element_text(family=”myfzhzh”,size=50,hjust=0,lineheight=1.2))showtext.end()dev.off()关于“怎么使用ggplot2实现玫瑰气泡图”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注开发云行业资讯频道,小编每天都会为大家更新不同的知识点。
这篇文章主要介绍“docker资源怎么快速清理”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“docker资源怎么快速清理”文章能帮助大家解决问题。查看 docker 占用的资源在进行资源清理之前我们有必要搞清楚 doc…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。