我试图让rgdal直接从一个postgis数据库读取多边形数据,但工作并不太顺利。我使用OSX10.9.2和R3.0.2,我已经从Kyngchaos安装了完整的GDAL 1.10.1框架。具体来说:http://www.gdal.org/ogr/drv_pg.html是我想要的司机。我已经确认了/Library/Frameworks/GDAL.framework/Versions/Current/Libraries/libpq.dylib
存在-正如我目前理解的,这是我需要的驱动程序。
rgdal包是根据已安装的gdal框架从源代码处编译的,使用:
sudo R CMD install rgdal_0.8-16.tar.gz --configure-args='--with-gdal-config=/Library/Frameworks/GDAL.framework/unix/bin/gdal-config --with-proj-include=/Library/Frameworks/PROJ.framework/unix/include --with-proj-lib=/Library/Frameworks/PROJ.framework/unix/lib'
成功完成。加载rgdal没有问题,但是postgres驱动程序拒绝显示:
> ogrDrivers()
name write
1 AeronavFAA FALSE
2 ARCGEN FALSE
3 AVCBin FALSE
4 AVCE00 FALSE
5 BNA TRUE
6 CouchDB TRUE
7 CSV TRUE
8 DGN TRUE
9 DXF TRUE
10 EDIGEO FALSE
11 ElasticSearch TRUE
12 ESRI Shapefile TRUE
13 Geoconcept TRUE
14 GeoJSON TRUE
15 GeoRSS TRUE
16 GFT TRUE
17 GML TRUE
18 GMT TRUE
19 GPSBabel TRUE
20 GPSTrackMaker TRUE
21 GPX TRUE
22 HTF FALSE
23 Idrisi FALSE
24 KML TRUE
25 MapInfo File TRUE
26 Memory TRUE
27 ODS TRUE
28 OpenAir FALSE
29 OSM FALSE
30 PCIDSK TRUE
31 PDF TRUE
32 PDS FALSE
33 PGDump TRUE
34 REC FALSE
35 S57 TRUE
36 SDTS FALSE
37 SEGUKOOA FALSE
38 SEGY FALSE
39 SQLite TRUE
40 SUA FALSE
41 SVG FALSE
42 TIGER TRUE
43 UK .NTF FALSE
44 VFK FALSE
45 VRT FALSE
46 WFS FALSE
47 XLS FALSE
48 XLSX TRUE
49 XPlane FALSE
我是不是漏掉了一些显而易见的东西?
(编辑:请注意
ogrinfo "PG:[conneciton string here]"
工作得很好,因此驱动程序肯定在工作) 最佳答案
很抱歉我自己回答,但我已经解决了。
忘记从CRAN repos获得的rgdal包吧,它包含自己的基本gdal,它没有必要的驱动程序。我仍然不明白为什么从源代码编译不起作用,但不管怎样,您都可以从以下站点获得rgdal的副本:
http://www.kyngchaos.com/software/frameworks