Korzystam z plików kształtów historii Granice stanów USA z NHGIS do tworzenia map w R. Te pliki kształtów mają znacznie wyższą rozdzielczość niż potrzebuję przy tworzeniu map w skali kraju: ponad 2 miliony obserwacji dla jednego pliku. Czy istnieje sposób na zmniejszenie rozdzielczości tych plików kształtów w R? W razie potrzeby mogę to zrobić w QGIS.
qgis
shapefile
r
resolution
Lincoln Mullen
źródło
źródło
Odpowiedzi:
Możesz użyć
gSimplify
zrgeos
pakietu, a jeśli dodasztopologyPreserve=TRUE
flagę, zachowa topologię.Zauważ, że nadal możesz skończyć z nakładającymi się liniami - potrzebujemy implementacji tego niezawodnego algorytmu DP w R:
http://www.sciencedirect.com/science/article/pii/S0098300413002380
[ten link prawdopodobnie za zaporą]
źródło
rgeos
znajdują się na stronie cran.r-project.org/web/packages/rgeos/rgeos.pdf .Standardową metodą „przerzedzania” kształtów liniowych (w tym granic wieloboków) jest algorytm Douglasa-Peuckera .
R
Zaimplementuj to co najmniej dwa pakiety:dp
w pakiecie shapefiles ithinnedSpatialPoly
w pakiecie Guerry .Zauważ, że przerzedzanie sąsiadujących wielokątów zwykle tworzy niewielkie przerwy i nakładają się na ich granice: nie uwzględnia to zależności topologicznych między nimi. Nie znam żadnego
R
pakietu, który zachowuje topologię podczas przerzedzania. W przypadku mapowania na małą skalę, takich jak te, nie powinno to stanowić poważnego problemu.Nawiasem mówiąc, ponieważ nikt nie wie, jak wymówić niemiecki :-), Tom Poiker zmienił pisownię swojego imienia jakiś czas temu.
źródło