Outdated version of the documentation. Find the latest one here.

7.1. Lesson: Reprojectarea și Transformarea Datelor

Haideți să vorbim din nou despre Sistemele de Coordonate de Referință (CRS-uri). Am atins acest subiect mai înainte, dar nu am discutat ce înseamnă practic.

Scopul acestei lecții: De a reproiecta și transforma seturile de date vectoriale.

7.1.1. basic Follow Along: Proiecții

CRS-ul folosit în acest moment pentru toate datele, precum și pentru harta în sine, este denumit WGS84. Acesta este un Sistem de Coordonate Geografic (GCS) utilizat, în mod comun, la reprezentarea datelor. Dar există o problemă, după cum vom vedea.

  • Salvați harta curentă.

  • Apoi deschideți harta lumii, pe care o veți găsi în exercise_data/world/world.qgs.

  • Focalizați Africa de Sud, folosindu-vă de instrumentul Zoom In.

  • Try setting a scale in the Scale field, which is in the Status Bar along the bottom of the screen. While over South Africa, set this value to 1:5000000 (one to five million).
  • Deplasați harta în timp ce aruncați o privire și la câmpul Scale.

Notice the scale changing? That’s because you’re moving away from the one point that you zoomed into at 1:5000000, which was at the center of your screen. All around that point, the scale is different.

Pentru a înțelege de ce, gândiți-vă la un glob al Pământului. Acesta are linii care pornesc de la Nord înspre Sud. Aceste linii longitudinale sunt situate departe una de alta la ecuator, dar se întâlnesc la poli.

In a GCS, you’re working on this sphere, but your screen is flat. When you try to represent the sphere on a flat surface, distortion occurs, similar to what would happen if you cut open a tennis ball and tried to flatten it out. What this means on a map is that the longitude lines stay equally far apart from each other, even at the poles (where they are supposed to meet). This means that, as you travel away from the equator on your map, the scale of the objects that you see gets larger and larger. What this means for us, practically, is that there is no constant scale on our map!

To solve this, let’s use a Projected Coordinate System (PCS) instead. A PCS “projects” or converts the data in a way that makes allowance for the scale change and corrects it. Therefore, to keep the scale constant, we should reproject our data to use a PCS.

7.1.2. basic Follow Along: Reproiectarea “Din-Zbor”

QGIS allows you to reproject data “on the fly”. What this means is that even if the data itself is in another CRS, QGIS can project it as if it were in a CRS of your choice.

  • Pentru a activa proiecția “din zbor”, efectuați clic pe butonul Starea CRS-ului din Bara de Stare din partea de jos a ferestrei QGIS:

../../../_images/crs_status_button.png
  • În caseta de dialog care apare, bifați caseta de lângă Activarea transformării ‘din zbor’ a CRS-ului.

  • Type the word global into the Filter field. One CRS (NSIDC EASE-Grid Global) should appear in the list below.
  • Clic pe NSIDC EASE-Grid Global pentru a-l selecta, apoi clic pe OK.

  • Observați modul în care forma Africii de Sud se schimbă. Toate proiecțiile lucrează prin schimbarea formelor aparente ale obiectelor de pe Terra.

  • Măriți iarăși până la scara 1:5000000, ca înainte.

  • Deplasați un pic harta.

  • Observați că scara rămâne la fel!

Reproiectarea “din zbor” este folosită, de asemenea, pentru a combina seturile de date aflate în diverse CRS-uri

  • Dezactivează iarăși reproiectarea “din zbor”:

    • Clic iarăși pe butonul CRS Status.

    • De-bifează caseta Enable ‘on the fly’ CRS transformation.

    • Clic pe OK

  • In QGIS 2.0, the ‘on the fly’ reprojection is automatically activated when layers with different CRSs are loaded in the map. To understand what ‘on the fly’ reprojection does, deactivate this automatic setting:
    • Mergeți la Settings ‣ Options...

    • În panoul din stânga al casetei de dialog, selectați CRS.

    • Debifați Reproiectarea automată ‘din zbor’ atunci când straturile au CRS-uri diferite.

    • Clic pe OK

  • Adăugați un alt strat vectorial hărții care are datele doar pentru Africa de Sud. Îl veți găsi ca exercise_data/world/RSA.shp.

Ce observați?

Stratul nu este vizibil! Dar aceasta este ușor de remediat, nu?

  • Clic dreapta pe stratul RSA din Lista straturilor.

  • Selectați Zoom to Layer Extent.

OK, acum se vede Africa de Sud, ... dar unde este restul lumii?

It turns out that we can zoom between these two layers, but we can’t ever see them at the same time. That’s because their Coordinate Reference Systems are so different. The continents dataset is in degrees, but the RSA dataset is in meters. So, let’s say that a given point in Cape Town in the RSA dataset is about 4 100 000 meters away from the equator. But in the continents dataset, that same point is about 33.9 degrees away from the equator.

This is the same distance - but QGIS doesn’t know that. You haven’t told it to reproject the data. So as far as it’s concerned, the version of South Africa that we see in the RSA dataset has Cape Town at the correct distance of 4 100 000 meters from the equator. But in the continents dataset, Cape Town is only 33.9 meters away from the equator! You can see why this is a problem.

QGIS doesn’t know where Cape Town is supposed to be - that’s what the data should be telling it. If the data tells QGIS that Cape Town is 34 meters away from the equator and that South Africa is only about 12 meters from north to south, then that is what QGIS will draw.

Pentru a corecta acest lucru:

  • Click on the CRS Status button again and switch Enable ‘on the fly’ CRS transformation on again as before.
  • Transfocare la extinderea setului de date RSA.

Acum, pentru că sunt proiectate în același CRS, cele două seturi de date se potrivesc perfect:

../../../_images/with_reprojection.png

La combinarea datelor care provin din surse diferite, este important să ne amintim că acestea s-ar putea să nu aibă același CRS. Reproiectarea “din zbor” vă ajută să le afișați împreună.

Înainte de a merge mai departe, probabil că doriți ca reproiectarea ‘din zbor’ să fie activată automat, la fiecare deschidere a seturilor de date cu CRS-uri diferite:

  • Deschideți iarăși Settings ‣ Options... apoi selectați CRS.

  • Activează Reproiectarea automată ‘din zbor’ atunci când straturile au CRS-uri diferite.

7.1.3. moderate Follow Along: Salvarea unui Set de Date într-un Alt CRS

Remember when you calculated areas for the buildings in the Classification lesson? You did it so that you could classify the buildings according to area.

  • Deschideți iarăși harta dvs. oișnuită (care conține datele Swellendam).

  • Deschideți tabela de atribute a stratului buildings.

  • Derulați înspre dreapta până când vedeți câmpul AREA.

Notice how the areas are all very small; probably zero. This is because these areas are given in degrees - the data isn’t in a Projected Coordinate System. In order to calculate the area for the farms in square meters, the data has to be in square meters as well. So, we’ll need to reproject it.

But it won’t help to just use ‘on the fly’ reprojection. ‘On the fly’ does what it says - it doesn’t change the data, it just reprojects the layers as they appear on the map. To truly reproject the data itself, you need to export it to a new file using a new projection.

  • Clic dreapta pe stratul clădiri din Lista straturilor.

  • Selectați Save As... în meniul care apare. Vi se va prezenta dialogul Save vector layer as....

  • Clic pe butonul Browse de lângă câmpul Save as.

  • Navigați la exercise_data/, apoi specificați numele noului strat ca buildings_reprojected.shp.

  • Lăsați Encoding neschimbat.

  • Schimbați valoarea casetei Layer CRS în Selected CRS.

  • Clic pe butonul Browse de lângă caseta cu derulare verticală.

  • Va apărea dialogul CRS Selector.

  • În câmpul Filter, căutați 34S.

  • Alegeți WGS 84 / UTM zone 34S din listă.

  • Lăsați Symbology export neschimbat.

Dialogul Save vector layer as... arată acum în felul următor:

../../../_images/save_vector_dialog.png
  • Clic pe OK

  • Începeți o nouă hartă și încărcați stratul reproiectat, pe care tocmai l-ați creat.

Consultați încă o dată lecția Classification, pentru a vă aminti cum se calculează suprafețele.

  • Actualizați (sau adăugați) câmpul AREA prin rularea aceleiași expresii de mai înainte:

../../../_images/new_area_field.png

Aceasta va adăuga un câmp AREA, având dimensiunea fiecărui imobil în metri pătrați

  • Pentru a calcula aria în alte unități de măsură, de exemplu, în hectare, utilizați câmpul AREA, pentru a crea o a doua coloană:

../../../_images/new_hectare_field.png

Aruncați o privire la noile valori din tabelul de atribute. Acestea sunt mult mai utile, deoarece oamenii măsoară, de fapt, mărimea clădirii în metri, nu în grade. Acesta este motivul pentru care reproiectarea datelor reprezintă o idee bună, la nevoie, înaintea calculării suprafețelor, a distanțelor și a altor valori care depind de proprietățile spațiale ale stratului.

7.1.4. hard Follow Along: Crearea Propriei Dvs. Proiecții

Există mai multe proiecții decât cele incluse în QGIS în mod implicit. De asemenea, puteți crea propriile proiecții.

  • Creați o nouă hartă.

  • Încărcați setul de date world/oceans.shp.

  • Mergeți la Settings ‣ Custom CRS... și veți vedea acest dialog:

../../../_images/custom_crs.png
  • Clic pe butonul Adaugă un nou CRS pentru a crea o nouă proiecție.

O proiecție interesantă de utilizat se numește Van der Grinten I.

  • Introduceți-i numele în câmpul Name.

Această proiecție reprezintă Pământul pe un teren circular, în locul uneia dreptunghiulară, la fel ca majoritatea celorlalte proiecții.

  • Pentru parametri, folosiți următorul șir:

+proj=vandg +lon_0=0 +x_0=0 +y_0=0 +R_A +a=6371000 +b=6371000 +units=m +no_defs

../../../_images/new_crs_parameters.png
  • Clic pe OK

  • Activați reproiectarea “din zbor”.

  • Alegeți proiecția dumneavoastră nou definită (căutați denumirea în câmpul Filter).

  • După aplicarea acestei proiecții, harta va fi reproiectată astfel:

../../../_images/van_grinten_projection.png

7.1.5. In Conclusion

Diferite proiecții sunt utile pentru scopuri diferite. Prin alegerea proiecția corectă, vă puteți asigura că entitățile de pe hartă sunt reprezentate cu precizie.

7.1.6. Further Reading

Materialele pentru secțiunea Avansată a acestei lecții au fost preluate din acest articol.

Mai multe informații despre Sistemele de Coordonate de Referință sunt disponibile aici.

7.1.7. What’s Next?

În lecția următoare veți învăța cum să analizați datele vectoriale, folosind diverse instrumente de analiză vectorială din QGIS.