Vairāk

Manuāla diapazona izvēle pakāpeniskam stila vektora slānim QGIS?


Es strādāju ar QGIS 2.12.1-Lyon Ubuntu 14.04 LTS. Man ļoti patīk šīs jaukās programmas funkcijas, bet man ļoti trūkst vienas lietas. Diezgan regulāri es strādāju ar atšķirībām. Attēliem es izmantoju gradētu polāro stilu ar baltu nulli un sarkanu / zilu diapazoniem +/- virzienā. Tas darbojas diezgan labi ar rastra datiem, kur es varu manuāli iestatīt min / max vērtības. Diemžēl, kā redzat ekrānuzņēmumā, vektora datiem nav iespējams iestatīt šo diapazonu (vai es to vienkārši neatradu?). Tā rezultātā, ja dati nav vienādi sadalīti ap 0, krāsas nevar tik viegli interpretēt. Vai ir kāds cits veids, kā manuāli iestatīt krāsu diapazonu vektoru slāņiem? (Es nevēlos manuāli rediģēt katru atsevišķu klasi, jo es šādus datus ielādēju diezgan bieži, un tas var kļūt ļoti kaitinošs).


Visbeidzot es atradu risinājumu. Tā kā nav iespējams manuāli pielāgot krāsu diapazona robežas, vismaz ir iespējams manuāli iestatīt katras klases diapazonus. Tā vietā, lai to darītu atkal un atkal katram profilam, ir iespējams to saglabāt un vienkārši ielādēt stilu citos projektos. Tā paša projekta ietvaros ir pat iespējams kopēt un ielīmēt stilus no citiem profiliem.


Šķiet, ka nav iespējams to automātiski izdarītBeidzisstils, bet šeit ir risinājums, iestatot krāsu ar izteicienu:

Atlasiet aViens simbolsstils. Iet uzVienkārša aizpildīšanazemAizpildietun atveriet vietnes izteiksmes redaktoruAizpildietkrāsa. Ievadiet šo:

ramp_color ('RdBu', mēroga_līnija (DH, 

“RdBu” ir gradienta nosaukums (šajā gadījumā no sarkanā līdz zilā krāsā), un ir robežas.

Ja vēlaties, lai gradienta vidū būtu nulle, vienkārši iestatiet augšējo un apakšējo robežu vienādai (-x… + x). Lai to izdarītu automātiski:

ramp_color ('RdBu', skalas_ lineārā (DH, min (minimālā (DH), - maksimālā (DH)), max (maksimālā (DH), - minimālā (DH)), 0, 1))

(Izteiksmes ievietošanaKolonnagadaBeidzisstils neder nulles centrēšanai: lai kas no šī izteiciena iznāktu, klasifikators nezina, kur atrodas nulle.)


Man bija jāpiemēro viens un tas pats stils datiem ar dažādiem kolonnu nosaukumiem. Man patiešām palīdzēja tas, ka ir iespējams "kopēt stilu" un pēc tam to ielīmēt bloknotā un visu, kas jums patīk, kopēt un ielīmēt no viena faila uz citu.


Lai gan tas nav pārsteidzošs risinājums, es galu galā izveidoju vektoru, kas tālu atrodas ar maksimālajām un minimālajām vērtībām, kuras es vēlētos izmantot. Kad jūs klasificējat Graduated, šķiet, ka tas darbojas labi. Vienāda intervāla vai diezgan pārtraukumi darbojas labāk nekā dabiski pārtraukumi, jo datu sadalījums nav liels.


Šeit ir vēl viens risinājums, kuru es tikko sāku izmantot. Joprojām ir diezgan daudz manuāla darba, bet es dodu priekšroku šādā veidā.

Man ir pilsētas teritoriju vektorfails valstij ar ugunsbīstamības indeksu no 0 līdz 1, kuru es krāsoju ar gradētu stilu, 10 klases. Automātiskais diapazons min / max darbojas labi, lai vizualizētu datus visā valstī, taču man ir nepieciešams tuvināt atsevišķus reģionus un rādīt indeksa lokālo mainīgumu. Bet mainīgums ir daudz mazāks nekā valsts mērogā, teiksim [0.2-0.4], un es nekādā ziņā nevaru ierobežot min / max stila diapazonu, tāpēc galu galā vietējie dati ir tikai 2-3 krāsās.

Tāpēc es varētu manuāli iestatīt katras 10 klases diapazonu, pēc tam saglabāt stilu un izmantot atkārtoti. Bet manuāli iestatīt 10 klases ir viskaitinošākā daļa, ko es uzskatu, un dažām tām var būt pat vairāk. Risinājums (manā gadījumā mainīgais: "FireIndex", lai mainītu no [0-1] uz [0,2-0,4]):

  • Noklikšķiniet uz E blakus nolaižamajai izvēlnei Kolonna
  • Mainiet mainīgo uz vēlamo min / max vērtību:

    LIETA
    KAD "FireIndex" <0,2 TAD 0,2 KAD "FireIndex"> 0,4 ​​TAD 0,4
    CITI "FireIndex"
    BEIGT

  • Noklikšķiniet uz Labi

  • Veiciet pakāpenisku stilu, pamatojoties uz pārrēķinātu mainīgo: izvēlieties krāsu joslu, režīmam, iespējams, jābūt "vienādiem intervāliem", klašu skaitam un noklikšķiniet uz "Klasificēt"

  • Tagad mums ir pareizie 10 krāsu diapazoni, sākot no 0,2 līdz 0,4
  • Atgriezieties nolaižamajā izvēlnē Kolonna un atkal izvēlieties sākotnējo mainīgo “FireIndex”
  • Ja vizualizējamajā apgabalā ir ārpus diapazona vērtības, tie nebūs redzami, tāpēc sadaliet augšējo un apakšējo klašu diapazonu līdz sākotnējo vērtību min / max.
  • Saglabājiet stilu
  • Noklikšķiniet uz Labi, neklikšķiniet uz “Klasificēt” vēlreiz, tas pārrēķinās krāsu diapazonus no 0 līdz 1


Skatīties video: rankinis tinkavimas (Oktobris 2021).