如何分析ggplot2分面气泡图饼图
发表于:2024-10-21 作者:千家信息网编辑
千家信息网最后更新 2024年10月21日,如何分析ggplot2分面气泡图饼图,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。ggplot2系统内的分面函数只有简单的一个fac
千家信息网最后更新 2024年10月21日如何分析ggplot2分面气泡图饼图
如何分析ggplot2分面气泡图饼图,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
ggplot2系统内的分面函数只有简单的一个facet_grid(),但是恰恰就是这么一个不很起眼,甚至看起来有些特立独行的分面函数,却给高维数据可视化带来了革命性的变化,有了它,所有基于ggplot2的可视化图形都能够扩展呈现 维度,从第三维、第四维、第五维(理论上来说)。
还是再强调一下facet_grid()在ggplot2各个几何图层中的地位和控制范围,分面函数作为一个特殊的,具有美学映射属性,却被设计在了与几何图层近乎独立地位(表现在从写法上来看,它并没有被设计在几何图层内,而是与其他几何图层在位置上平行),由此可见包作者对其的推崇和重视。
它的控制权限是很高的,倘若你在facet_grid()函数内部指定了一个分面参数,那么剩余的所有几何图层都可以自动适用这个分面(当然前提是各几何图层的美学映射中都好含有与分面参数相同的变量)。
所以想要分面参数同事控制多个图层,必须保证每一个图层内都含有该分面参数同名的变量。
今天以气泡饼图为例:
library(ggplot2)
library(dplyr)
library(rgdal)
library(shiny)
library(shinythemes)
library(scatterpie)
导入并整理地图数据:
china_map <-readOGR("D:/R/mapdata/State/china.geojson","OGRGeoJSON",stringsAsFactors=FALSE)Encoding(china_map@data$name)<-"UTF-8"china_map <- fortify(china_map) province_city <- read.csv("D:/R/rstudy/Province/chinaprovincecity.csv",stringsAsFactors = FALSE,check.names=FALSE)
构造气泡饼图数据:
city_data<-data.frame(Name=rep(c("北京","上海","重庆","武汉","广州","西安")))
for (i in 2:7) city_data[,i]<-round(runif(6,0,250))names(city_data)[2:7]<-paste0("Year",2011:2016)city_data$Full<-apply(city_data[,-1],1,sum)city_data$Full_scale<-scale(city_data$Full,center=F,scale=T)*2
#提取中心城市数据:city_data<-city_data%>%merge(province_city[,c("city","wd","jd")],by.x="Name",by.y="city",all.x=TRUE)
气泡饼图:
ggplot() +
geom_polygon(data=china_map,aes(x=long,y=lat,group=group),fill="white",color="grey")+ geom_scatterpie(data=city_data,aes(x=jd,y=wd,r=Full_scale),cols=names(city_data)[2:7],color="grey", alpha=.8) + scale_fill_brewer(guide=FALSE)+ theme_void()
构造带有分类变量的气泡饼图数据:
city_data2<-data.frame(Name=rep(city_data$Name,6))
for (i in 2:4) city_data2[,i]<-runif(nrow(city_data2),10,100)names(city_data2)[2:4]<-paste0("Value",1:3)city_data2$Year<-rep(paste0("Year",2011:2016),each=6)city_data2<-city_data2%>%merge(city_data[,c("Name","jd","wd")],by="Name",all.x=T)city_data2$Full<-apply(city_data2[,2:4],1,sum)%>%scale(center=F,scale=T)city_data2$Full<-as.numeric(city_data2$Full)*2
city_data2<-city_data2%>%arrange(Year,Name)
高维分面饼图:
ggplot()+geom_polygon(data=china_map,aes(x=long,y=lat,group=group),fill="white",color="grey")+geom_scatterpie(data=city_data2,aes(x=jd,y=wd,r=Full),cols=names(city_data2)[2:4],color="grey", alpha=.8) + scale_fill_brewer(guide=FALSE)+ facet_wrap(~Year)+ theme_void()
关于如何分析ggplot2分面气泡图饼图问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
气泡
几何
数据
函数
参数
分析
变量
问题
控制
地位
更多
美学
高维
可视化
帮助
解答
设计
易行
相同
起眼
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
保险数据库编程语言
js写个数据库
美洲思维导图软件开发
网络安全算国家安全吗
杨浦区参考网络技术咨询创新服务
2018湖南网络安全比赛
sds数据库
疫情期间网络安全怎么样
高性能服务器硬件介绍
沭阳网络技术价目表
在网络安全模式下卸载360天擎
禁毒教育科普展厅软件开发
不同数据库表定时同步数据
CNZZ下载软件开发
开发web服务器端
数据库中size的默认大小
mvc访问实例数据库
网络安全文字手抄报
昌吉网络安全公司
服务器硬件检查
肾炎影响入职 软件开发吗
wamp ftp服务器
3A大作是用什么软件开发的
在网络安全模式下卸载360天擎
青海网络技术服务
sql创建数据库的代码
对学生进行网络安全教育简报
工控网络安全案例
计算机网络技术项目经理
云网络服务器