读取空间数据

在 R 中可视化地理空间数据

Charlotte Wickham

Assistant Professor at Oregon State University

纽约县的家庭收入中位数

  • 普查小区是人口数量大致相同的区域
  • 空间对象:
    • 普查小区多边形
    • 更大社区多边形
    • 水域多边形

纽约地图

在 R 中可视化地理空间数据

步骤

  • 读取描述社区和水道的形状文件
  • 对齐两种坐标系
  • 将数据框数据合并到 SpatialPolygonsDataFrame
  • 打磨地图,使其可用于发表

纽约地图

在 R 中可视化地理空间数据

读取形状文件

  • 矢量数据:由点、线、多边形描述的数据
  • 形状文件是最常见的格式
在 R 中可视化地理空间数据

读取形状文件

# rgdal::readOGR() reads in vector formats
library(rgdal) 
library(sp)

dir()
"water"
dir("water")
"water-areas.dbf" "water-areas.prj" 
"water-areas.shp" "water-areas.shx"
water <- readOGR("water", "water-areas")
OGR data source with driver: ESRI Shapefile 
Source: "water", layer: "water-areas"
with 20 features
It has 5 fields
在 R 中可视化地理空间数据

检查结果

summary(water)
Object of class SpatialPolygonsDataFrame
Coordinates:
        min       max
x -74.04731 -73.90866
y  40.68419  40.88207
Is projected: FALSE 
...
plot(water)

纽约线条图

在 R 中可视化地理空间数据

读取栅格文件

library(rgdal)  # rgdal::readGDAL() reads in raster formats to sp objects
library(raster) # raster::raster() reads in raster formats to raster objects
dir()
"usgrid_data_2000"   "usgrid_data_2000_1"
dir("usgrid_data_2000")
"metadata"     "usarea00.tif"  "usba00.tif" "usfb00.tif" "usgrid-2000-variables.xls" "usp2500.tif" 
"uspop300.tif" "uspov00.tif"  "uspvp00.tif"
total_pop <- raster("usgrid_data_2000/uspop300.tif")
在 R 中可视化地理空间数据

检查结果

total_pop
class       : RasterLayer 
dimensions  : 3120, 7080, 22089600  (nrow, ncol, ncell)
resolution  : 0.008333333, 0.008333333  (x, y)
extent      : -125, -66, 24, 50  (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +datum=NAD83 +no_defs +ellps=GRS80 +towgs84=0,0,0 
data source : /Users/wickhamc/Documents/Projects/courses-visualizing-geospatial-
              data-in-r/data/census_grids/usgrid_data_2000/uspop300.tif 
names       : uspop300 
values      : 0, 65535  (min, max)
在 R 中可视化地理空间数据

让我们来练习!

在 R 中可视化地理空间数据

Preparing Video For Download...