R语言可视化——REmapC(填充地图)
时间:2022-05-08
本文章向大家介绍R语言可视化——REmapC(填充地图),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
今天跟大家介绍REmap函数家族中的第三个函数——REmapC。
REmapC函数允许我们同时在一张地图上制作填充图和点图、线图。
library(REmap)
library(baidumap)
?remapC
remapC(data,
maptype = 'china',
markLineData = NULL,
markPointData = NULL,
color = c('#1e90ff','#f0ffff'),
theme = get_theme("Bright"),
title = "",
subtitle = "",
markLineTheme = markLineControl(),
markPointTheme = markPointControl(),
geoData = NA,
mindata = NA,
maxdata = NA)
四个主要参数说明:
参数一:data为需要的原始数据框格式数据,共2列,第一列为省份或者城市名称,第二列为对应的数值,数值大小将决定地图颜色深浅。
参数二:maptype为地图类型设置,可选world、china或者中国省份名称
参数三:color为热力图渐变颜色,默认为2个颜色,第一个为终止色,第二个为初始色。如果只有一个颜色,系统会自动以白色补充为初始铯色。
参数四:mindata与maxdata可以设置颜色极端点对应数据的上下限(默认是使用data中的数据最大值最小值作为两端极值)。
一、全国热力图
首先利用mapnames函数提取全国各省份名称:
province <- mapNames("china") #全国省份
value <- rnorm(34,100,30) #随机生成分省值
mydata <- data.frame(province,value) #合成数据框作图数据
remapC(mydata,color=c("yellow","red"),title="全国分省热地图",subtitle="我是副标题") #制作热力图
默认的颜色标度是从最小值到最大值。以上函数中省略了markLineData,markPointData 两个参数,所以并未显示点线图。
ad_ln <- mapNames("liaoning")
[1] "大连市" "朝阳市" "丹东市" "铁岭市" "沈阳市" "抚顺市" "葫芦岛市" "阜新市" "锦州市"
[10] "鞍山市" "本溪市" "营口市" "辽阳市" "盘锦市"
value_ln<-rnorm(14,100,30)
data_ln <-data.frame(ad_ln,value_ln)
ad_ln value_ln
1 大连市 79.67630
2 朝阳市 41.93198
3 丹东市 173.31586
4 铁岭市 106.01990
5 沈阳市 119.40256
6 抚顺市 79.54820
7 葫芦岛市 155.62993
8 阜新市 122.99599
9 锦州市 94.17395
10 鞍山市 82.18944
11 本溪市 98.70972
12 营口市 115.59957
13 辽阳市 104.89199
14 盘锦市 92.92975
map_out <- remapC(data_ln,
maptype = "liaoning",
color=c("green"),
title="辽宁省热力地图",
theme = get_theme("Sky"),
maxdata=180
)
plot(map_out)
接下来做一个案例:
每年春运,广东省人口会大批回流原住地,形成壮观的春运人流大军,我们模拟出广东省回流各省的人口数,使用填色地图表示人流规模,使用动态流向线表示回流最大的前10个省份。
因为没有实际的数据,这里我用函数模拟数据(非真实数据):
province <- mapNames("china") #全国省份
value <- round(rnorm(34,1000,30),0) #随机生成分省值
mydata <- data.frame(province,value) #合并数据
labelper<-mydata[order(mydata[,"value"],decreasing=T),][1:10,]
origin<-rep("广州",length(labelper))
destination<-labelper$province
line_data<-data.frame(origin,destination)
map_out1 <- remapC(mydata,
maptype = "china",
title="人口迁徙地图",
theme = get_theme("Drak"),
color=c("#CD0000","#FFEC8B"),
markLineData=line_data,
markLineTheme=markLineControl(
color="white",
lineWidth=2,
lineType="dashed"
),
markPointData=line_data[2],
markPointTheme=markPointControl(
symbolSize=13,
effect=T,
effectType="scale",
color="white"
)
)
plot(map_out1)
因为假设广东是人口迁出地,给广东填色是没有任何意义的,所以mydata数据中需要忽略 广东的数据
mydata1 <- mydata[-12,]
map_out2 <- remapC(mydata1,
maptype = "china",
title="人口迁徙地图",
theme = get_theme("Drak"),
color=c("#CD0000","#FFEC8B"),
markLineData=line_data,
markLineTheme=markLineControl(
color="white",
lineWidth=2,
lineType="dashed"
),
markPointData=line_data[2],
markPointTheme=markPointControl(
symbolSize=13,
effect=T,
effectType="scale",
color="white"
)
)
plot(map_out2)
- Google宣布TensorFlow Lite 可支持 Core ML!
- 开源软件十位贡献者,PHP之父只能排第十,第一名当之无愧!
- DataTable排序结果的纠正
- web框架
- java:利用xpath删除xml中的空节点
- java array to list
- Python之Dijango的“坑” hostname, aliases, ipaddrs = gethostbyaddr(name) UnicodeDecodeError: 'utf-8' cod
- nGrinder 简易使用教程
- UI设计高效学习网站&工具,来自学长的收藏夹哦
- 安装git出现templates not found的问题
- 时间戳 时间
- jenkins 设置 gitlab web hooks
- 测试流程?项目管理流程?
- 学web前端开发写给新手的建议,超实用!
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Mycat分库分表全解析 Part 6 Mycat 全局序列号
- 通过 PHP 原生代码实现视图模板引擎的解析和渲染
- [MySQL故障处理]记一次innobackupex导致的从库无法同步的问题
- [Oracle 故障处理]记一次DG数据文件无法创建的问题
- mysqldump命令详解 4-按条件备份表数据
- mysqldump命令详解 5-导出事件,函数和存储过程
- [Oracle集群软件全解析]Oracle Cluster Registry Utility 参考
- mysqldump命令详解 Part 8 其他的一些的参数的介绍
- mysqldump命令详解 Part 6- --master-data参数的使用
- 腾讯云语音识别.net-sdk使用笔记0818
- mysqldump命令详解 Part 9 mysqldump命令总结
- [MySQL学习笔记] 3.mysqldump命令详解 Part 2 -备份全库
- [MySQL学习笔记]1. MySQL测试数据的构造
- [MySQL学习笔记]2. mysqldump命令详解 Part 1
- 怎样在PF_ring上使用RSS实现网络流量负载均衡