ggplot2玫瑰图中星巴克门店分布图示例分析
发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,今天就跟大家聊聊有关ggplot2玫瑰图中星巴克门店分布图示例分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。使用ggplot2制作放射状玫
千家信息网最后更新 2025年01月24日ggplot2玫瑰图中星巴克门店分布图示例分析
今天就跟大家聊聊有关ggplot2玫瑰图中星巴克门店分布图示例分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
使用ggplot2制作放射状玫瑰图本不是什么难事,仅需将普通单序列柱形图添加添加一个极坐标转化参数即可。
但是遇到比较小清新的案例,还是值得手动操作一下的。
关于星巴克门店分布TOP20城市分布数据图,用色和呈现形式比较友好,所以就信手拿来作为案例分享给大家。
原图中并未给出任何实际数据(所以需要用眼睛估测了~-~)
library("rvest")
library("dplyr")
library("ggplot2")
library("grid")
library("showtext")
library("Cairo")font.add("myfont","msyh.ttc")
找一份网上的最新统计数据
url<-"http://bbs.thmz.com/thread-2715502-1-1.html"
table<-read_html(url,encoding="gbk")%>%html_nodes("td.t_f>table")%>%html_table(header =TRUE,trim =TRUE,fill=TRUE)%>%as.data.frame()
城市数据
mydata<-data.frame(label=c("上海","北京","杭州","广州","深圳","苏州","成都","天津","南京","武汉","宁波","重庆","西安","无锡","厦门","青岛","长沙","南通","常州","福州"))
整理数据
mydata<-merge(mydata,table[,c("城市","门店数量")],by.x="label",by.y="城市",all.x=TRUE)mydata[mydata$label=="常州","门店数量"]=27
names(mydata)[2]<-"value"
mydata<-arrange(mydata,-value)%>%transform(id=1:20,class=c(1,6,rep(1:6,3)))mydata$label<-as.character(mydata$label)
#标签拆成单字换行,竖排布局:
label<-strsplit(mydata$label,"")
for (i in 1:length(label)){mydata$label_ff[[i]]<-paste0(label[[i]],collapse="\n")}mydata[1:2,"label_ff"]<-c("上海","北京")mydata[16:20,"label_ff"]<-c("青岛","厦门","常州","福州","南通")
#计算标签的旋转角度:
mydata$angle=c(rev(9*(1:10-1)+4.5),-(9*(1:10-1)+4.5))mydata$angle[16:20]<-rev(9*(1:5-1)+4.5)
图形可视化过程:
p<-ggplot(mydata)+geom_col(aes(x=id,y=value,fill=factor(class)))+geom_hline(yintercept =c(25,50,100,200,500),linetype=2,size=.25)+geom_text(aes(x=id,y=value+12,label=label_ff,angle=angle),family="myfont",size=3.5,lineheight=1)+#坐标轴放大一倍占位:scale_x_continuous(limits=c(0,40),expand=c(0,0))+#Y延伸到负值突出圆心的空白scale_y_continuous(limits=c(-100,600))+scale_fill_manual(values=c("#00643E","#207A57","#3D8C6D","#59A284","#76B69B","#95CBB3"),guide=FALSE)+coord_polar(start=-14.245)+theme_void();p
图形输出:
setwd("E:/数据可视化/R/R语言学习笔记/数据可视化/ggplot2/优秀R语言案例")CairoPNG(file="polar_rose.png",width=2400,height=1800)showtext.begin()grid.newpage()pushViewport(viewport(layout=grid.layout(6,8)))vplayout<-function(x,y){viewport(layout.pos.row =x,layout.pos.col=y)}print(p,vp=vplayout(1:6,1:8))showtext.end()dev.off()
局部线条经过手工修饰!
以上就是整个制图过程,其中关于角度转换以及细节处理问题均省略掉了,如需了解可以 单独交流。
看完上述内容,你们对ggplot2玫瑰图中星巴克门店分布图示例分析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。
数据
门店
城市
玫瑰
巴克
内容
案例
常州
可视化
分布图
示例
图中
分析
图形
数量
标签
角度
语言
过程
上海
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全 应急 演练
在页面输入数据库信息
江西曙光服务器维修维保哪家好
英雄联盟官网怎么查服务器状态
网络安全与解决策略
广州炎阳软件开发有限公司
关于网络安全的看法二十字
魂二服务器
网络安全护航成长作文八百字
广西南宁软件开发园
软件开发工程师se
access数据库关闭绑定
chiphell 服务器机箱
天猫如何开启无法连接服务器
涂鸦科技互联网
江苏pdu服务器电源生产厂
数据库怎么查找管理员账号
org是哪的服务器
华为服务器开关黄色
天津大学网络安全招生太少
华为高斯数据库供应商
达梦数据库连接某个库的命令
上海济忆网络技术有限公司电话
如何查看服务器的dns
智慧园区管理平台服务器
什么是互联网金融科技
服务器关机先关管理还是先关储存
江西服务器电源哪个品牌好
数据库转换成api
右岸网络技术有限公司