使用R语言绘制中国地图

R语言环境

    R3.1.1 Windows8.1

    需要安装的packages: maptools,gp

绘图所需要的数据

    中国地图的GIS数据(可以此下面的网址下载)
         http://cos.name/wp-content/uploads/2009/07/chinaprovinceborderdata_tar_gz.zip

         是一个压缩包,完全解压后包含三个文件(bou2_4p.dbf、bou2_4p.shp和bou2_4p.shx)
    中国各省会城市的经纬度数据  

城市,Jd,Wd
北 京,116.4666667,39.9
上 海,121.4833333,31.23333333
天 津,117.1833333,39.15
重 庆,106.5333333,29.53333333
哈尔滨,126.6833333,45.75
长 春,125.3166667,43.86666667
沈 阳,123.4,41.83333333
呼和浩特,111.8,40.81666667
石家庄,114.4666667,38.03333333
太 原,112.5666667,37.86666667
济 南,117,36.63333333
郑 州,113.7,34.8
西 安,108.9,34.26666667
兰 州,103.8166667,36.05
银 川,106.2666667,38.33333333
西 宁,101.75,36.63333333
乌鲁木齐,87.6,43.8
合 肥,117.3,31.85
南 京,118.8333333,32.03333333
杭 州,120.15,30.23333333
长 沙,113,28.18333333
南 昌,115.8666667,28.68333333
武 汉,114.35,30.61666667
成 都,104.0833333,30.65
贵 阳,106.7,26.58333333
福 州,119.3,26.08333333
台 北,121.5166667,25.05
广 州,113.25,23.13333333
海 口,110.3333333,20.03333333
南 宁,108.3333333,22.8
昆 明,102.6833333,25
拉 萨,91.16666667,29.66666667
香 港,114.1666667,22.3
澳门,113.5,22.2

绘图脚本

#设置当前工作目录
setwd("E:/R语言学习/")

#加载packages
library(sp)
library(maptools)

#读取省会城市经纬度数据
data <- read.csv("citylonlat.csv",header=TRUE,sep=",")
#读取各省的边界数据等
border <- readShapePoly("package/china-province-border-data/bou2_4p.shp")

#设置输出文件
#jpeg("chinamap.jpeg")

#画地图
plot(border,col=rainbow(925),ylim = c(18, 54), panel.first = grid());

#增加省会城市坐标点
points(data$Jd, data$Wd, pch = 19, col = rgb(0, 0, 0, 0.5))

#增加标注
text(data$Jd, data$Wd, data[,1], cex = 0.6, col = rgb(0,
    0, 0, 0.7), pos = c(2, 4, 4, 4, 3, 4, 2, 3, 4, 2, 4, 2, 2,
    4, 3, 2, 1, 3, 1, 1, 2, 3, 2, 2, 1, 2, 4, 3, 1, 2, 2, 4, 4, 2))

#增加标签的另一种方式
#pointLabel(data$Jd, data$Wd, data[,1], offset = 0, cex = .6)

#设置坐标轴
axis(1, lwd = 0); axis(2, lwd = 0); axis(3, lwd = 0); axis(4, lwd = 0)

#输出结果到文件
#dev.off()

绘制的中国地图

参考

http://cos.name/2009/07/drawing-china-map-using-r/

http://yihui.name/cn/2008/10/china-map-and-city-locations-with-r/

http://yihui.name/cn/2008/10/avoid-label-overlap-pointlabel-in-maptools/

http://www.r-project.org/

时间: 2025-01-26 19:23:25

使用R语言绘制中国地图的相关文章

动态效果-highmaps绘制中国地图

问题描述 highmaps绘制中国地图 用highmaps绘制中国地图,然后怎样实现点击地图某个区域,然后弹出一个柱状图显示数据信息呢,请问有做过这个效果的大神给指点一下!谢谢哈 解决方案 NCL绘制中国地图matlab绘制中国地图----------------------

raphael.js绘制中国地图

 在本文中给大家分享如何使用raphael.js来完成地图交互,raphael.js是一个很小的javascript库,它可以在网页中实现绘制各种矢量图.各类图表.以及图像裁剪.旋转.运动动画等等功能,需要的朋友可以参考下 最近的数据统计项目中要用到中国地图,也就是在地图上动态的显示某个时间段某个省份地区的统计数据,我们不需要flash,仅仅依靠raphael.js以及SVG图像就可以完成地图的交互操作.在本文中,我给大家分享如何使用js来完成地图交互.     先简单介绍下raphael.js

raphael.js绘制中国地图 地图绘制方法_javascript技巧

最近的数据统计项目中要用到中国地图,也就是在地图上动态的显示某个时间段某个省份地区的统计数据,我们不需要flash,仅仅依靠raphael.js以及SVG图像就可以完成地图的交互操作.在本文中,我给大家分享如何使用js来完成地图交互. 先简单介绍下raphael.js,raphael.js是一个很小的javascript库,它可以在网页中实现绘制各种矢量图.各类图表.以及图像裁剪.旋转.运动动画等等功能.此外raphael.js还跨浏览器兼容,而且还兼容老掉牙的IE6啊.raphael.js的官

一文详解如何用 R 语言绘制热图

简介 本文将绘制静态与交互式热图,需要使用到以下R包和函数: ● heatmap():用于绘制简单热图的函数 ● heatmap.2():绘制增强热图的函数 ● d3heatmap:用于绘制交互式热图的R包 ● ComplexHeatmap:用于绘制.注释和排列复杂热图的R&bioconductor包(非常适用于基因组数据分析) 数据准备 使用R内置数据集 mtcars df <- as.matrix((scale(mtcars))) #归一化.矩阵化 使用基本函数绘制简单简单热图 主要是函

R语言绘制横向柱装图

首先载入颜色扩展包RColorBrewer,具体使用方法可参见下面两篇文章http://book.2cto.com/201408/45552.html,http://tianxingzhe.blog.51cto.com/3390077/1641199   library(RColorBrewer) 本文以hadoop集群wordcount程序的输出结果为数据源 数据的整理代码如下 x=read.delim("C:/Users/a/Desktop/sample.txt",header=F

哈佛教授公开R语言源码,教你用R制作gif动图

在日常教学的过程中,我有时会用动画来形象地解释概念,并且通过 @rafalab账号(https://twitter.com/rafalab)在社交媒体上分享. John Storey最近问我是否可以公开这些源代码.由于我不甚有条理,而且这些动画都是灵机一动想出来的,所以之前这些代码分散在几个不相关联的文件中.John的请求促使我把这些代码整理在一起发布在这里. 所有的gif动图都是用R语言绘制的数张图片的叠加.在代码中你可以发现,我用几种不同的方法将单独的图片转化成动态gif图.第一种方法(不推

《R语言数据分析》——导读

前 言 自20多年前发源于学术界以来,R语言已经成为统计分析的通用语言,活跃于众多产业领域.目前,越来越多的商业项目开始使用R,兼之R用户开发了数以千计易于上手的开发包,都使得R成为数据分析工程师及科学家最常用的工具. 本书将帮助读者熟悉R语言这一开源生态系统,并介绍一些基本的统计背景知识,以及一小部分相关的数学知识.我们将着重探讨使用R语言解决实际的问题. 由于数据科学家在数据的采集.清洗及重构上将耗费大量时间,因此本书首先将通过第一手实例来重点探讨从文件.数据库以及在线资源中导入数据的方法,

独家 | 6步教你用R语言制作动图

引言   数据可视化可能是数据科学领域最重要却通常最少被提及的部分.   我这么说是因为创造数据故事和可视化对你的顾客最终怎么看待你的工作有巨大的影响.数据科学不仅仅是说你的模型如何复杂或精细,它是使用基于数据的洞察力来解决问题(的范畴).并且,为了实施这些解决方案,你的领导们需要了解你的计划. 在创造有影响力的可视化进程中,挑战之一便是创造能够自己讲话的图像.这篇文章将会告知一种方式来帮你创作可使用的生动的GIF图像(即图表可交互化格式).当你想要显示基于时间或者基于循环的故事时,这种方式将对

R语言数据挖掘

数据分析与决策技术丛书 R语言数据挖掘 Learning Data Mining with R [哈萨克斯坦]贝特·麦克哈贝尔(Bater Makhabel) 著 李洪成 许金炜 段力辉 译 图书在版编目(CIP)数据 R语言数据挖掘 / (哈)贝特·麦克哈贝尔(Bater Makhabel)著:李洪成,许金炜,段力辉译. -北京:机械工业出版社,2016.9 (数据分析与决策技术丛书) 书名原文:Learning Data Mining with R ISBN 978-7-111-54769-