欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答、求职一站式搞定!
对商业智能BI、大数据分析挖掘、机器学习,python,R等数据领域感兴趣的同学加微信:tstoutiao,邀请你进入数据爱好者交流群,数据爱好者们都在这儿。
作者:噜啦啦啦啦统计学出身 R语言中文社区专栏作者
知乎ID:
https://www.zhihu.com/people/shen-chang-43
前言
关于气泡地图bubble map 是一种很常见的地理位置信息相关的很常见的可视化图,可同时传递多维度信息,用气泡的位置传递物理位置信息,气泡的大小表示变量1值的大小,气泡的颜色可以标识变量2的大小/类别,可以用时间frame制作.gif来表示各变量随时间的变化。
bubble map一般是通过导入.shp的地图数据来完成的,但很多情况下,标准的地图数据是很难获得的,只有图片形式的的图片,这时候为了绘制bubble map 就需要导入外部图片为ggplot的背景。下面以澳大利亚图片地图为例,展示这种情况下bubble map的画法,因为是网络图受版权保护,在实际操作中可以选择更清晰高质量的背景图。
本文包含五部分内容:
图片背景加载到ggplot和plotly图中
使用ggplot2绘制图片为背景的气泡地图
使用gganimate生成气泡gif图
使用plotly制作图片为背景的可视化地图
制作plotly的交互api并放入汇报中

气泡图(来源于网络)
绘制气泡地图
1library("pacman")#加载包辅助包
2p_load(ggplot2, EBImage, jpeg, ggpubr, plotly)
3P_load(ggthemr)#配色主题包
4p_load(gganimate, animation)#制作动图
5devtools::install_github("thomasp85/gganimate")

澳大利亚地图图片版(来源于网络)
首先通过模拟生成用于作图的数据:
1data_map<-as.data.frame(matrix(NA,nrow =5,ncol&n