楼主: 求证1加1
7024 38

[学习分享] 【版块活动】一月一包主题讨论 [推广有奖]

21
xingzhaoh 发表于 2014-4-17 15:48:26
jmpamao 发表于 2014-4-17 09:28
我之前画的图,标注省会城市的
是从百度下的 坐标。
你去找下 有没有 省的标注坐标(就是在每个区域内, ...
能说的详细一点嘛,着急用呢

22
Livreanalystes 在职认证  学生认证  发表于 2014-4-17 15:54:17
dingyiding

23
jmpamao 发表于 2014-4-17 16:29:33
xingzhaoh 发表于 2014-4-17 08:39
library(maptools)axx
其数据是目测的,
  1. prov=list(x=c(110,96,113,115,123,128),y=c(41,40,31,38,42,47))
  2. text(prov,c("内蒙古","甘肃省","湖北省","河北省","辽宁省","黑龙江省"),cex=0.6)
复制代码

24
jmpamao 发表于 2014-4-19 20:44:28
今天再次搞四川和重庆的问题。
1、搞清楚, plot(c(1,1,1,1,1,1,1,1,2),c(1,1,1,1,1,1,1,1,2))和 plot(c(1,2),c(1,2))的制图效果一样,没有因为点的重复,而加深,这和text 不同。所以在 重庆和四川的边界点,制图上并没有因此加深。(还纠结过很久,⊙﹏⊙b汗)
  1. require(maptools)
  2. x= readShapePoly("bou2_4p.shp")#中国省边界shp文件,附件上传此文件。
  3. chongqing=slot(x@polygons[[208]],"Polygons")[[1]]@coords
  4. shichuang=slot(x@polygons[[206]],"Polygons")[[1]]@coords
  5. data=rbind(shichuang[-1,],chongqing[-1,]);plot(data)
  6. data1=data[duplicated(data)+duplicated(data,fromLast=T)>0,];plot(data1)#边界点

  7. #如果觉得plot不好看,可以用maps包
  8. require(maps)
  9. map(list(x=c(shichuang[,1],NA,chongqing[,1]),y=c(shichuang[,2],NA,chongqing[,2])))
复制代码


2、计算面积
尝试通过 经纬度 计算面积。需要大家的帮助。从网上查阅,有些 如何计算坐标  (X1,Y1),(X2,Y2),...(X1,Y1) 组成的闭环的多边形面的例子,下面的这个网站,需要科学上网,。
http://local.wasp.uwa.edu.au/~pbourke/geometry/polyarea/
area convex polygon formula.gif
  1. n_cq=length(chongqing)/2
  2. abs(0.5*sum(chongqing[1:(n_cq-1),1]*chongqing[2:n_cq,2]-chongqing[1:(n_cq-1),2]*chongqing[2:n_cq,1]))
复制代码
[1] 7.715986
  1. > x@data[x@data$NAME=="重庆市",]#在第207位置,看看面积
  2.         AREA PERIMETER BOU2_4M_ BOU2_4M_ID ADCODE93 ADCODE99   NAME
  3. 207 7.716    26.012      209         50   510000   500000 重庆市
复制代码

尝试了 四川, 上海 后 都得到 此公式的结果,和国家地图shp 文件中保存的“AREA"项,相同。
因此,请教大家, 这个公式的 单位是什么  经纬度的平方?是平面面积非球面?这个单位怎么转换 平方公里等。貌似维度的1度长度是变化的。上述公式如何解释?
bou2_4p.rar (403.63 KB) 本附件包括:
  • bou2_4p.shp










已有 1 人评分学术水平 热心指数 信用等级 收起 理由
ywh19860616 + 5 + 5 + 5 精彩帖子

总评分: 学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

25
小洋仔 学生认证  发表于 2014-4-20 18:52:11
jmpamao 发表于 2014-4-15 21:09
赞。。

26
hyu9910 在职认证  发表于 2014-4-24 00:16:03
牛叉哈

27
统计R浪人 发表于 2014-4-24 07:53:27
来晚了,好热闹啊,以后要常来学习
已有 1 人评分论坛币 热心指数 收起 理由
jmpamao + 60 + 2 等你们等的好辛苦~等人接棒呢 :)

总评分: 论坛币 + 60  热心指数 + 2   查看全部评分

28
yywan0913 在职认证  发表于 2014-4-24 08:34:56
统计R浪人 发表于 2014-4-24 07:53
来晚了,好热闹啊,以后要常来学习
都等着你压轴表演呢。
已有 1 人评分经验 学术水平 收起 理由
jmpamao + 60 + 2 接棒了~~~

总评分: 经验 + 60  学术水平 + 2   查看全部评分

是什么给了你自信

29
dxystata 发表于 2014-4-24 09:05:33
ZF网站应该有相应数据可以下载吧!

30
统计R浪人 发表于 2014-4-24 22:26:45
jmpamao 发表于 2014-4-19 20:44
今天再次搞四川和重庆的问题。
1、搞清楚, plot(c(1,1,1,1,1,1,1,1,2),c(1,1,1,1,1,1,1,1,2))和 plot(c(1 ...
1、如果应用精度要求不高的话可以用一个比例直接转换经纬度面积与平方公里面积
2、如果精度需要很高的话可以参考该方法,看看这个如何经纬度面积转平方米
http://blog.csdn.net/lockepeak/article/details/60792063、不规则图形计算如图示:

Snap1.jpg (32.79 KB)

示意图

示意图

已有 2 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
jmpamao + 60 + 1 + 1 + 1 有没有兴趣把这个C 语言,改R语言编写撒
求证1加1 + 20 + 1 + 1 + 1 鼓励积极发帖讨论

总评分: 论坛币 + 80  学术水平 + 2  热心指数 + 2  信用等级 + 2   查看全部评分

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 21:18