Forum QGIS

Pełna wersja: Kalkulator pól - przypisywanie wartości danym elementom
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Witam,

Załóżmy że mam warstwę wektorową z użytkowaniem terenu gdzie poszczególnym formom użytkowania przypisane są numery na podstawie legendy (korzystam z map corine land cover). I co jeśli teraz chciałabym stworzyć nową kolumnę gdzie do każdej wartości byłby przypisane słownie rodzaj użytkowania, np wszystkie poligony z wartością 12 niech dostaną w tabeli opis "lasy" a z kolei wszystkie 16 niech mają przypisane "tereny_zielone" (trochę wymyślam teraz, nie pamiętam jak na prawdę jest w tej legendzie, ale cel ten sam). Na forum w jednym z wątków odgrzebałam że można to zrobić poprzez taką formułę: replace(nazwa_kolumny,'A','B'). No i faktycznie działa, ale zamieniam tylko jedną wartość, np te 12 na lasy, ale reszta wciąż przypisuje wartości liczbowe (załączam screen, myślę że on lepiej to zobrazuje). Nie wiem jak zmodyfikować tę formułę żeby uwzględnić pozostałe formy użytkowania. [attachment=408]
W CLC jest trochę dużo tych klas, można to zrobić na funkcji IF, ale byłaby chyba trochę rozbudowana..

A nie lepiej wykorzystać do tego relację w tabeli? We właściwościach warstwy na karcie "Pola" wybierasz "Rodzaj edytora" dla pola DN (lub X, ale X musi być równy DN - ale to jeśli chcesz mieć w tabeli jednocześnie pola z kodem i opisem). Z dostępnej listy wybierz "Relacja" i ustaw tam opcje - wybierz tabelę, i pola z kodem i opisem (tabelę z kodami możesz sama zrobić, albo gdzieś może jest do ściągnięcia). Potem możesz zapisać taką warstwę, a przy zapisie zaznacz opcję "Use Relacja" przy polu, które wykorzystałaś do stworzenia opisów. Smile
No PRAWIE rozumiem Smile Znalazłam te opcje o której mówisz tylko nie do końca rozumiem jak mam stworzyć tę tabelę z kluczem? Dla upewnienia czy mówimy o tym samym wrzucam screena. No bo tak: wybrałam jako warstwę moją warstwę z mapą clc, jako kolumnę wartości kolumnę DN, ale nie wiem skąd mam wziąć kolumnę z kluczem? Jak utworzyć w programie wspomnianą przez Ciebie tabelę? [attachment=409]

Sama rozwiązałam ten problem wpisując polecenie:

case
when "DN" = 2 then 'a'
when "DN" = 12 then 'b'
when "DN" = 18 then 'c'
when "DN" = 20 then 'd'
when "DN" = 21 then 'e'
when "DN" = 23 then 'f'
when "DN" = 24 then 'g'
when "DN" = 25 then 'h'
else 0
end

I mam już nową tabelę z przypisami. Jednak jeśli miałbyś chwilę na wyjaśnienie Twojej metody to nadal będę bardzo wdzięczna za wytłumaczenie bo mnie zaciekawiłeś Smile

Pozdrawiam
A, zapomniałem dopisać Wink Tabelę można zrobić w Calcu albo Excelu (format ods/xls QGIS czyta) Smile I potem wystarczy przeciągnąć do okna programu taką tabelę, i funkcjonuje ona jako tabela atrybutów, ale bez geometrii.
(06-03-2017, 10:26)Binko napisał(a): [ -> ]A, zapomniałem dopisać Wink Tabelę można zrobić w Calcu albo Excelu (format ods/xls QGIS czyta) Smile I potem wystarczy przeciągnąć do okna programu taką tabelę, i funkcjonuje ona jako tabela atrybutów, ale bez geometrii.

Ok, dzięki wielkie Smile