Oto, co chcę osiągnąć (po prawej):
Szukam narzędzia lub metody do przekształcenia pliku kształtu (z QGIS lub R) w tę formę. I pamiętaj: nie chodzi tylko o przycięcie sześciokątnej siatki lub siatki sześciokątów! Każdy sześciokąt powinien reprezentować taką samą liczbę miar (np. Każdy sześciokąt reprezentuje 5000 drzew).
Może wiesz o scapetoad! http://scapetoad.choros.ch/ Zasadniczo chcę stworzyć wynik podobny do scapetoad - ale z bardziej ograniczoną siatką (?).
edytuj: Wzmianka o QGis i R nie jest ograniczeniem - tylko tam szukałem rozwiązania. Oczywiście jestem zadowolony z każdego narzędzia, metody lub porady!
Odpowiedzi:
Nieco bardziej satysfakcjonująca procedura:
Utwórz kartogram metodą „opartą na dyfuzji” (np. Scapetoad).
W QGis:
Utwórz warstwę heksagonalną [Wtyczki> Qmarxan> Utwórz siatkę planowania] (użyj odpowiedniej / pożądanej liczby sześciokątów). edycja: W zależności od celu mapy siatka Qmarxans może mieć wątpliwą jakość. Mmqgis plugin daje znacznie lepsze wyniki (wielokąty wyrównać idealnie).
Połącz warstwę heksagonalną z kartogramem [Wektor> Narzędzia zarządzania danymi> Połącz atrybuty według lokalizacji]
Teraz nowa warstwa heksagonalna ma wszystkie właściwości / atrybuty z kartogramu i można uzyskać dostęp do każdej podjednostki osobno.
W celu lepszego zachowania kształtu podjednostek możliwe jest ręczne modyfikowanie: Wybierz sześciokąt (y) i zmień atrybuty bezpośrednio w tabeli atrybutów. Ten krok działa najlepiej, jeśli warstwa jest półprzezroczysta, a oryginalny kartogram oparty na dyfuzji pokazano poniżej.
Scalanie sześciokątów podjednostki w jedną jednostkę: 1. Wybierz wszystkie sześciokąty podjednostki (jeśli wiele: użyj tabeli atrybutów do wyboru). 2. „Przełącz edycję”> „Scal wybrane funkcje”.
Głównie brakuje b) pozostaje - ale a) zostało rozwiązane, a także do pewnego stopnia c) nie jest już dużym problemem, b / c ta metoda nie zajmuje tyle czasu.
Edycja: Krok 4. (i pokolorowane później) prowadzi do tego wyniku (przezroczysta warstwa sześciokąta u góry, poniżej kartogram „oparty na dyfuzji”):
Jasnozielone sześciokąty wyraźnie zajmują jeden rząd za dużo ...
Jakieś pomysły, w jaki sposób można uzyskać lepsze / niestandardowe dopasowanie „atrybutów łączenia”? - Szukam metody nadania algorytmowi pewnego rodzaju progu (na przykład:> 50% powierzchni).
źródło
Tymczasem przedstawię mój dotychczasowy pomysł:
Utwórz kartogram metodą „opartą na dyfuzji” (np. Scapetoad).
W QGis:
Utwórz warstwę punktową [Wektor> Narzędzia badawcze> Zwykłe punkty].
Klip punktowa warstwa z kartogramem.
Utwórz warstwę heksagonalną [Wtyczki> Qmarxan> Utwórz siatkę planowania] (użyj odpowiedniej / pożądanej liczby sześciokątów).
Policz punkty na wielokąt [Wektor> Narzędzia analizy> Punkty w wielokącie].
We właściwościach warstwy warstwy heksagonalnej: zastosuj etykietowanie (lub obcinanie) oparte na regułach [Filtr: „PKTCNT”> = 1].
To wszystko, co do tej pory mam.
Niedociągnięcia to:
a) To tylko ogólny kształt (podjednostki muszą zostać ponownie opracowane ...)
b) Liczba sześciokątów jest nieco dowolna w stosunku do rzeczywistej miary i gorzej
c) jeśli chcę zmienić jednostkę miary (np. zamiast 5 000 drzew na sześciokąt, teraz chcę 100 000 drzew na sześciokąt = dalsze zmniejszenie złożoności / szczegółów), muszę ponownie wykonać całą procedurę.
źródło