【发布时间】:2013-02-13 23:40:24
【问题描述】:
我不知道如何开始,因为我在 R 中玩的 GIS 一直是使用 ggplot2 和其他使用 latlong 坐标的包来绘制东西。我现在需要做的是在 Microstrategy 中使用可视化组件,该组件使用 HTML 文件形式的 shapefile,其中包含绘图的 x-y 坐标(即左上角为 0,0)。状态级文件的示例是:
<HTML><HEAD><TITLE>untitled</TITLE></HEAD><BODY>
<IMG SRC="" USEMAP="#myMap" WIDTH="812" HEIGHT="713" BORDER="0" />
<MAP NAME="myMap">
<AREA SHAPE="POLY" HREF="#" ALT="Texas" COORDS="299,363,299,360,....." />
</MAP></BODY></HTML>
“坐标”中列出的点是相对于 812 x 713 的“图像”的 X 和 Y 点,该图像是动态绘制和着色的。
我有来自http://www.vdstech.com/usa-data.aspx 的 Zip3 和 Zip5 的 shp、shx、dbf 文件,但我不确定从哪里开始转换!我不介意手动格式化 HTML 文件的繁重工作,这是我坚持的 X-Y 转换(生锈,很长一段时间没有接触过 GIS):
以下代码将 shapefile 导入 R
library(rgdal)
zip3 <- readOGR(dsn = '/Users/adempsey/Downloads/zip3'), layer = 'zip3')
之后我被卡住了,目前正在寻找如何将 zip3 + x-y 坐标提取到数据框中的教程,然后我可以用它来创建我的最终文件
更新 2
使用以下内容,我可以转换为数据框,但我无法提取关联的 zip3 代码,该代码似乎存储在关联的 dbf 文件中
Row long lat order hole piece group id
1 -151.0604 70.41873 1 FALSE 1 0.1 0
2 -150.7620 70.49722 2 FALSE 1 0.1 0
是的,这超出了我目前生锈的 R
更新3 此代码将邮政编码转储到数据框中 zip3.codes
【问题讨论】:
-
来自
ggplot2包的fortify怎么样? -
我不熟悉那个功能。我仍在研究 zip3 变量及其结构
-
fortify 将从 SpatialPolygonsDataFrame 转换为
data.frame以使用ggplot2进行绘图。 -
是的,但这些是由
readOGR访问的,并且数据在 R 中可用。 -
as.data.frame(zip3)或zip3@data.....
标签: r gis microstrategy