如何分析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安全错误
数据库的锁怎样保障安全
数据库一般外键在哪里键
996高科技互联网公司
挂机器人服务器
遥控器软件开发公司
太平洋汇率服务数据库
珠海的软件开发工程师
如何攻击别人游戏服务器
软件开发评审费用一般比例
普洱思茅互联网科技
吕梁市网络安全保安支队
恒大集团网络安全需求分析
英雄联盟掉线后无法连接到服务器
网络安全领域吧已经被发现
立体式的网络安全
四川工程软件开发多少钱
渣打银行软件开发招聘
对新一代网络技术的看法
pg数据库更新语句
苏州戴尔服务器
北京1u服务器机箱批发
网络安全管理员培训班
寻找个人软件开发
无主之地3断开服务器就卡
智慧安监软件开发单位
数据库常见的函数
华为服务器光驱线
志愿者网络安全宣讲百度文库
怎么将前端和数据库连接起来
优你家互联网科技有限公司保险
江西项目管控软件开发平台