Jak otworzyć shapefile bez ArcGIS
Shapefile bez ArcGIS otworzysz na trzy sposoby. Zainstaluj QGIS, który jest darmowy i otwarty, i przeciągnij plik .shp na mapę. Użyj ogrinfo z pakietu GDAL w wierszu poleceń, aby wyświetlić warstwę, pola i układ współrzędnych. Albo upuść pliki .shp, .shx i .dbf do przeglądarki shapefile w FileReshape, która pokazuje mapę i tabelę atrybutów w Twojej przeglądarce internetowej, niczego nie wysyłając na serwer.
Najpierw sprawdź, czy masz wszystkie części
Shapefile to nie jeden plik, tylko zestaw plików o tej samej nazwie. Plik .shp przechowuje geometrię, plik .shx to indeks, który łączy każdy kształt z jego wierszem, a plik .dbf zawiera tabelę atrybutów. Te trzy są wymagane. Plik .prj opisuje układ współrzędnych, a plik .cpg podaje kodowanie tekstu w tabeli atrybutów. Oba są opcjonalne, ale bardzo zalecane.
Najczęstszy powód, dla którego shapefile „nie chce się otworzyć”, to wysłanie lub skopiowanie samego pliku .shp. Jeśli ktoś przysłał Ci mailem pojedynczy plik .shp, poproś o cały folder, najlepiej jako .zip. Dodatkowe pliki, takie jak .sbn, .sbx, .qix czy .shp.xml, to indeksy przestrzenne i metadane; żaden program nie potrzebuje ich do otwarcia danych.
Przeglądając dane, pamiętaj o ograniczeniach formatu. Nazwy pól w pliku .dbf mogą mieć najwyżej 10 znaków, stąd skrócone kolumny w rodzaju DESCRIPTIO. Każdy shapefile przechowuje tylko jeden typ geometrii, więc punkty, linie i poligony zawsze trafiają do osobnych plików shapefile. Do tego pliki .shp i .dbf są ograniczone do 2 GB każdy.
Otwórz shapefile w QGIS
QGIS to darmowy i otwarty program GIS na Windows, macOS i Linuksa. To najlepszy wybór, gdy potrzebujesz czegoś więcej niż szybkiego podglądu: edycji geometrii lub atrybutów, stylizacji, łączenia tabel, pomiarów albo wydruku mapy. Na Linuksie jest zwykle dostępny w menedżerze pakietów dystrybucji, dlatego to standardowa odpowiedź na pytanie, jaka przeglądarka shapefile działa na Linuksie.
Jeśli QGIS pyta o układ współrzędnych, brakuje pliku .prj. Wybierz właściwy układ we właściwościach warstwy, bo inaczej warstwa wyląduje w złym miejscu na mapie.
- Zainstaluj QGIS ze strony qgis.org lub z menedżera pakietów i utwórz nowy projekt.
- Przeciągnij plik .shp z menedżera plików do okna mapy albo wybierz „Warstwa” > „Dodaj warstwę” > „Dodaj warstwę wektorową” i wskaż plik .shp.
- Kliknij warstwę prawym przyciskiem myszy i wybierz „Otwórz tabelę atrybutów”, aby zobaczyć pola i wartości.
- Kliknij warstwę prawym przyciskiem myszy i wybierz „Właściwości”, aby sprawdzić układ współrzędnych, kodowanie i typy pól.
Sprawdź shapefile w wierszu poleceń za pomocą ogrinfo
GDAL to otwarta biblioteka, na której opiera się QGIS i wiele innych narzędzi. Zawiera programy wiersza poleceń ogrinfo i ogr2ogr. Na Linuksie zainstalujesz je zwykle z pakietu o nazwie gdal-bin lub gdal; na Windows i macOS są dołączone do QGIS albo można je zainstalować osobno. Wiersz poleceń to właściwe narzędzie na serwery, do skryptów i zadań wsadowych na wielu plikach.
Opcja -so wypisuje podsumowanie zamiast wszystkich obiektów: typ geometrii, liczbę obiektów, zasięg, układ współrzędnych i listę pól z ich typami. Pomiń ją, aby wypisać każdy obiekt z atrybutami. Aby zamienić shapefile na inny format, użyj ogr2ogr, np. do GeoJSON, który odczyta każdy edytor tekstu i wiele narzędzi internetowych.
# Podsumowanie: typ geometrii, liczba obiektów, zasięg, układ współrzędnych i pola
ogrinfo -so -al roads.shp
# Konwersja do GeoJSON w WGS84
ogr2ogr -f GeoJSON -t_srs EPSG:4326 roads.geojson roads.shpOtwórz shapefile w przeglądarce za pomocą FileReshape
Jeśli chcesz tylko zobaczyć, co jest w pliku shapefile, „Przeglądarka shapefile” w FileReshape nie wymaga instalacji i działa na Windows, Macu, Linuksie, Chromebookach i tabletach. Działa w Twojej przeglądarce dzięki GDAL skompilowanemu dla sieci, więc pliki są odczytywane z Twojego dysku i nie są wysyłane na serwer. To bezpieczny wybór, gdy szukasz podglądu online, do którego trzeba by wgrać shapefile, a dane są poufne.
Możesz upuścić plik .zip z shapefile albo zaznaczyć razem pliki .shp, .shx, .dbf i .prj. W pliku .zip przeglądarka sama znajduje części, nawet w podfolderze, a kilka plików shapefile z jednego .zip rysuje na tej samej mapie, z listą do przełączania między ich tabelami atrybutów. Nagłówek każdej kolumny pokazuje nazwę pola i typ odczytany przez GDAL, np. String, Integer, Real lub Date. Kliknij wiersz, aby przybliżyć mapę do danego obiektu, albo kliknij obiekt na mapie, aby znaleźć jego wiersz.
Bez pliku .prj przeglądarka przyjmuje WGS84, gdy współrzędne wyglądają na długość i szerokość geograficzną, a w przeciwnym razie prosi o kod EPSG. Bez pliku .cpg odczytuje poprawny UTF-8 jako UTF-8, a pozostały tekst według strony kodowej z nagłówka pliku .dbf albo jako Windows-1252, gdy jej tam nie ma.
- Otwórz przeglądarkę shapefile i upuść plik .zip albo zaznacz naraz pliki .shp, .shx, .dbf i .prj.
- Obejrzyj obiekty na mapie i przewiń tabelę atrybutów pod nią.
- Opcjonalnie kliknij „Pobierz jako GeoJSON”, aby zapisać kopię wszystkich obiektów w WGS84.
Którą metodę wybrać?
Przeglądarki internetowej użyj do szybkiego podglądu pliku, który ktoś Ci przysłał, na komputerze, na którym nie możesz lub nie chcesz instalować oprogramowania. Działa tylko w trybie odczytu, więc nie uszkodzi plików, ale też nie pozwala ich edytować. Aby działać płynnie, rysuje do 20 000 obiektów na warstwę i pokazuje w tabeli pierwsze 1000 wierszy, choć liczniki i plik GeoJSON do pobrania obejmują wszystkie obiekty. Ograniczeniem jest pamięć Twojej przeglądarki.
QGIS wybierz, gdy chcesz edytować, stylizować, analizować lub drukować albo gdy plik jest bardzo duży. ogrinfo i ogr2ogr przydadzą się, gdy chcesz sprawdzać lub konwertować wiele plików w skrypcie albo pracujesz na serwerze bez pulpitu. Wszystkie trzy odczytują te same pliki, więc możesz zacząć w przeglądarce, a potem przejść do QGIS.
Najczęściej zadawane pytania
Czy mogę otworzyć sam plik .shp?
Nie w użyteczny sposób. Plik .shp zawiera tylko geometrię. Bez pliku .dbf nie ma atrybutów, a bez pliku .shx większość programów odrzuca plik. Poproś o wszystkie pliki o tej samej nazwie albo o .zip z folderem.
Czy istnieje przeglądarka shapefile na Linuksa?
Tak. QGIS działa na Linuksie i jest w repozytoriach pakietów większości dystrybucji, a ogrinfo z pakietu GDAL wypisuje podsumowanie w wierszu poleceń. Przeglądarka FileReshape też działa w każdej nowoczesnej przeglądarce internetowej na Linuksie.
Czy mój shapefile jest wysyłany na serwer, gdy używam przeglądarki online?
Nie. FileReshape odczytuje pliki w Twojej przeglądarce i tam rysuje mapę. Z internetu ładowane są tylko kafelki mapy podkładowej; Twoje dane nigdzie nie są wysyłane.
Dlaczego nazwy pól są ucięte?
Tabela atrybutów .dbf dopuszcza nazwy pól o długości najwyżej 10 znaków, więc długie nazwy są skracane przy zapisie pliku shapefile. Pełnych nazw nie da się odzyskać z samego pliku shapefile.
Czy mogę edytować shapefile bez ArcGIS?
Tak, w QGIS. Włącz edycję ikoną ołówka przy warstwie, zmień geometrię lub wartości atrybutów i zapisz zmiany. Przeglądarka FileReshape działa tylko w trybie odczytu.