前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言可视化——地图与气泡图结合应用

R语言可视化——地图与气泡图结合应用

作者头像
数据小磨坊
发布2018-04-11 14:28:53
3.7K0
发布2018-04-11 14:28:53
举报
文章被收录于专栏:数据小魔方

今天跟大家分享如何在地图上进行散点图、气泡图绘制。

昨天跟大家介绍了ggplot函数进行地图绘制的原理,通过轮廓点和分组来定义每一个地区(国家边界),通过多边形填充来完成区域填色。

ggplot的图层叠加原理晕允许我们在坐标系统的叠加多个图层;

所以在地图上叠加散点、甚至气泡可以很容易的实现:

包的导入:

library(maptools)

library(ggplot2)

library(plyr)

导入地理信息数据:

china_map <- readShapePoly("c:/rstudy/bou2_4p.shp") # 读取地图信息数据

china_map1 <- fortify(china_map) #转化为数据框

业务数据导入及作图数据合并:

mydata <- read.csv("c:/rstudy/geshengzhibiao.csv") #读取业务数据

province_city <- read.csv("c:/rstudy/chinaprovincecity.csv") #读取省会城市坐标

china_data <- join(province_city, mydata, type="full") #合并两个数据框

地图语句:

ggplot()+

geom_polygon(data=china_map1, aes(x=long, y=lat, group=group), fill="grey95", colour="grey60")+

geom_point(data=china_data, aes(x = jd,y = wd, size=zhibiao, fill=zhibiao2, alpha=0.3), shape=21, colour="black")+

scale_size_area(max_size=8)+

scale_fill_gradient2(low="DarkCyan", mid="Azure", high="Sienna", midpoint=median(na.omit

(china_data$zhibiao2)))+

coord_map("polyconic") +ggtitle("Heat&Bubble plot")+

theme(

panel.grid = element_blank(),

panel.background = element_blank(),

axis.text = element_blank(),

axis.ticks = element_blank(),

axis.title = element_blank(),

legend.position = "none"

)

以上语法中,使用了geom_polygon()多边形函数来定义并填充地图背景 (注意里面的fill参数(指定地图区域颜色),colour参数指定多边形(也就是地区轮廓线)边框颜色),然后通过geom_point()函数添加散点图图层。

图层中指定数据源为合并后的业务数据,散点面积(大小)用zhibiao1来映射,气泡图颜色用zhibiao2来映射(本来散点是只有点颜色(使用colour控制,没有填充色的,可是当给散点指定其形状后,散点就有了面积属性可以使用fill进行颜色填充),气泡的轮廓线用colour来指定)。

之后的scale_size_area()和scale_fill_gradient2()是对前面geom_point内的fill与size两个标度进行的深度调整,scale_size_area()告诉软件散点大小与面积要严格的与指标1具体数值大小成比例,并规定面积最大为25。

scale_fill_gradient2()定义了一个三色渐变,low、mid、high分别由一个颜色代码控制,同时均值颜色要映射给指标2的平均数。

最后的ggtitle定义主题,theme内的参数清除掉所有图层上的无关元素(背景、网格系统、横纵轴标签、刻度线、轴标题、图例)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-09-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据小魔方 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图数据库 KonisGraph
图数据库 KonisGraph(TencentDB for KonisGraph)是一种云端图数据库服务,基于腾讯在海量图数据上的实践经验,提供一站式海量图数据存储、管理、实时查询、计算、可视化分析能力;KonisGraph 支持属性图模型和 TinkerPop Gremlin 查询语言,能够帮助用户快速完成对图数据的建模、查询和可视化分析。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档