Ordine preferito di scrittura di tuple di latitudine e longitudine nei servizi GIS


145

Quando si ha a che fare con il codice sorgente GIS è spesso necessario scrivere tuple di coordinate di latitudine e longitudine.

Ad esempio nei link di Google Maps (123, 456):

http://maps.google.com/maps/ms?msid=214518704716144912556.00046d7689a99e95b721c&msa=0&ll=123,456&spn=0.007996,0.026865

Qual è l'ordine preferito (e perché?)

  • latitudine Longitudine

  • longitudine latitudine

Ho visto entrambi essere utilizzati in vari sistemi e spero di trovare alcune prove da attaccare con altri.

Esiste una pratica standard e, in caso affermativo, cos'è / cosa sono?


2
invece dell'ordine preferito, puoi controllare una raccolta di casi: macwright.org/lonlat
golimar

3
È latitude, longitudeordine
onmyway133

1
Sto votando per chiudere questa domanda perché non si tratta di programmazione ma di geografia. È anche una domanda basata sull'opinione.
TylerH,

1
@MikkoOhtamaa La differenza è che la tua domanda non pone quale sia l'ordine richiesto per una specifica specifica tecnica (che sarebbe probabilmente off-topic tanto quanto una richiesta di informazioni di documentazione off-site), ma piuttosto quale sia il metodo "preferito" è [ in generale ]. Ciò che è preferito cambia in base alla persona che chiedi e allo scopo / contesto dell'uso. Come hanno mostrato le risposte qui, entrambi gli ordini hanno un seguito sostanziale. Successivamente, la questione delle relazioni di programmazione non è ancora stata affrontata.
TylerH,

1
@MikkoOhtamaa Non ho alcun problema con le domande GIS su Stack Overflow. Questa non è una domanda GIS; è una domanda "come devo ordinare latitudine / longitudine" ... non c'è nemmeno un'applicazione GIS specifica che stai chiedendo. Questa domanda è ancora basata sull'opinione (qualsiasi domanda che richieda "metodi preferiti" è basata sull'opinione), troppo ampia (quale contesto, scenario o applicazione stai chiedendo? Come mostrano le risposte, è diverso in base a tali criteri), e non sulla programmazione (latitudine e longitudine non sono termini di programmazione ma termini geografici).
TylerH,

Risposte:


211

EPSG: 4326 afferma specificamente che l'ordine delle coordinate dovrebbe essere latitudine, longitudine. Molti pacchetti software utilizzano ancora l'ordinamento di longitudine e latitudine. Questa situazione ha provocato un caos inimmaginabile sulle scadenze dei progetti e sulla sanità mentale del programmatore.

La migliore guida che uno può offrire è quella di essere pienamente consapevole dell'ordine degli assi previsto di ciascun componente nello stack del software. PostGIS prevede lng / lat. WFS 1.0 utilizza lng / lat, ma WFS 1.3.0 si differenzia dallo standard e utilizza lat / lng. Per impostazione predefinita, GeoTools è lat / lng ma può essere sostituito con una proprietà di sistema.

I documenti di GeoTools sulla storia e la spiegazione del problema meritano una lettura: http://docs.geotools.org/latest/userguide/library/referencing/order.html


6
Raramente vedo come risposta su SO.com che indica perché così bene. Beats schifo di quelle risposte "perché MongoDB lo usa".
Mikko Ohtamaa,

1
Il tuo link non è d'accordo con te; Nel database EPSG, 4326 esegue il mapping a un CRS geografico con ordine degli assi (latitudine, longitudine). Tuttavia, la maggior parte dei software sul campo comprende EPSG: 4326 come un CRS geografico con ordine degli assi (longitudine, latitudine), poiché le specifiche OGC legacy sono state progettate in questo modo.
Aaron McIver,

7
Prime due frasi dalla mia risposta: EPSG: 4326 afferma specificamente che l'ordine delle coordinate dovrebbe essere latitudine, longitudine. Molti pacchetti software utilizzano ancora l'ordinamento di longitudine e latitudine. Non è esattamente lo stesso?
Shane,

5
Se qualcun altro ha problemi con Google Maps e la fornitura di un file KML, l'ordine è Longitudine / Latitudine !! Nessuna documentazione per il file KML dice questo !!
Turnerj,

2
"Nessuna documentazione per il file KML dice questo" non è corretto. developers.google.com/kml/documentation/kmlreference#point "Una singola tupla composta da valori in virgola mobile per longitudine, latitudine e altitudine (in quell'ordine)."
tmcw,

28

L'ordine preferito è per convenzione latitude, longitude. Ciò è stato presumibilmente standardizzato dall'Organizzazione marittima internazionale come riportato qui . Google utilizza questo ordine anche su Maps e Earth . Ricordo questo ordine pensando all'ordine alfabetico di latitude, longitude.


12
Tranne che nei file KML. Le coordinate sono memorizzate come lng, lat, alt; probabilmente perché può essere tradotto in x, y, z
Wouter van Nifterick,

23

L'ordine corretto è longitudine, latitudine, praticamente in tutte le applicazioni GIS professionali, come nella matematica convenzionale (cioè f(x ,y, z)). Lo standard GeoJSON è abbastanza tipico e succinto:

The order of elements must follow x, y, z order
(easting, northing, altitude for coordinates in a 
projected coordinate reference system, or longitude,
latitude, altitude for coordinates in a geographic
coordinate reference system).

Lo stesso vale per gli standard primari del consorzio Open Geospatial (WKT e WKB e le estensioni come EWKB). Allo stesso modo Google potrebbe emettere l'ordine in Lat / Lon per renderlo più familiare agli utenti che sono cresciuti con quell'usanza (cioè da standard di navigazione come IMO, piuttosto che da quelli computazionali). Ma lo stesso standard KML è come praticamente tutti gli altri sistemi GIS:

The KML encoding of every kml:Location and coordinate
tuple uses geodetic longitude, geodetic latitude, and
altitude (in that order).

Buona regola: se si sa cosa una tupla è e sono la programmazione, si dovrebbe utilizzare lon, lat. Vorrei anche dire che questo vale se il vostro utente finale (dire un pilota o un capitano di nave) preferiranno per visualizzare l'output in lat, lon. Se necessario, puoi cambiare l'ordine nell'interfaccia utente, ma la stragrande maggioranza dei tuoi dati (shapefile, geojson, ecc.) Sarà nel normale ordine cartesiano.


4
Vedo un po 'di disaccordo qui: DUE scelte da scegliere - troppe!
Mikko Ohtamaa,

6
I lettori dovrebbero notare che ISO 6709 afferma esplicitamente che dovresti sempre usare il formato [lat, lon] in qualsiasi interfaccia utente e non è - come si potrebbe dedurre - semplicemente una questione di preferenze personali.
Iain Collins,

9

Per convenzione nella "vita reale", quando si dà una posizione, la latitudine (cioè Nord / Sud) viene sempre data 1 °, ad esempio 20 ° N 56 ° O (anche se, questo non segue la normale convenzione se si pensa a un cartesiano standard griglia); allo stesso modo, tutte le coordinate su Wikipedia seguono questa convenzione (ad es. vedere la posizione per Southampton: http://en.wikipedia.org/wiki/Southampton ). Per evitare confusione, specialmente quando le unità non vengono incluse, consiglierei sempre che la latitudine sia data 1 ° in una tupla.


9

Personalmente non ho mai visto altro che latitudine seguita da longitudine.

E, quando si usa + e - invece di N e S, è sempre stato + è N e - è S.

Ho osservato variazioni quando ho usato + e - per E e W. Generalmente + è stato E e - è stato W. Tuttavia, nelle applicazioni più vecchie in cui si stavano occupando in modo straziante con W longitudinali, ho visto + essere W e - essere E .

Spero che non dovrai avere a che fare con applicazioni così vecchie.


È facilmente osservabile quando si lavora con applicazioni in tutto il mondo.
Daniel Antunes Pinto,

Digita qualsiasi coppia di coordinate di longitudine e latitudine nelle mappe di Google e vedrai che la interpreta come (lunga, lat), non viceversa. Questo è un esempio di un sistema molto utilizzato.
cazort,

2
@cazort Per qualsiasi motivo, ciò non accade qui. Ad esempio, la mia città natale di Eugene, Oregon, è approssimativamente a N 44.1, W 123.1. Se in maps.google.com inserisco 44,1 -123,1, va a Eugene. Se inserisco -123.1 44, mi dice che non riesco a trovarlo. È interessante notare che, se entro 123,1 W 44 N, lo capisce e va a Eugene, quindi c'è una certa flessibilità. Anche riferimento.com/technology/… sembra indicare che lat / long è l'ordine preferito. Inoltre, per quello che vale, Google Earth utilizza lat / long.
Terry

5

Oltre alle specifiche GeoJSON, che altri hanno già menzionato, ci sono altri casi pratici in cui si raccomanda longitudine, ordine di latitide, anche obbligatorio - ad esempio: indicizzazione geospaziale in MongoDB . Se si sbaglia l'ordine lì, le query restituiranno risultati errati, come se si eseguisse nuovamente un set di dati trasposto.


5

Quindi l'ordine preferito dipende dalle preferenze personali!

La latitudine venne prima; l'equinozio è noto da millenni, come i giorni in cui il "sole attraversa l'equatore"; a marzo attraversando da S a N e settembre da N a S. L'unica domanda avrebbe potuto essere se l'equatore avrebbe dovuto essere di 0 o 90 gradi. Prendendo 0 gradi, l'angolo tra lo zenit solare verticale e quello mezzogiorno sull'equinozio è la latitudine di una posizione, ovunque sul pianeta. La latitudine primaria o parallelo principale si è effettivamente definita.

La longitudine poteva essere solo previo accordo. La Gran Bretagna ha assegnato un premio Longitudine. La Gran Bretagna aveva bisogno che le sue navi sapessero dove fossero e avevano bisogno di mappe migliori. Harrison ( http://www.youtube.com/watch?v=T-g27KS0yiY ) ha prodotto un accurato cronometro marino; mandarono viaggi di viaggio per la creazione di mappe, ad esempio James Cook del 1770. La Gran Bretagna quindi rivendicò il Primo Meridiano usando Greenwich come 000deg per le sue mappe. Dopo 100 anni di utilizzo, il Prime Meridian fu accettato a livello internazionale, nel 1884.

All'epoca di Cristoforo Colombo, Latitude era l'unico numero che avevano. La strategia era di attraversare un parallelo prima di girare a sinistra o a destra per la destinazione; alla ricerca di nuvole o uccelli. Misurare la velocità in nodi ogni ora era comune ma non teneva conto delle correnti. Forse il più grande successo di Colombo è stato di tornare a casa dalle Indie occidentali quattro volte. Senza quello, la terra che ha scoperto non potrebbe essere aggiunta alle mappe.

Leggi "Longitudine" di Dava Sobel (ISBN: 9780007214228)


1
Penso che significhi programmaticamente e con un riferimento tecnico (ma potrei sbagliarmi). La lezione di storia è stata interessante, comunque.
jww

1
Questo non è legato alla domanda, ma sicuramente interessante. Grazie :)
Mikko Ohtamaa,

Ma ha senso, perché se si utilizzassero solo le coordinate della mappa, sarebbe senza dubbio che l'ordine sarebbe longitudine, latitudine, come in X, Y; la confusione esiste solo a causa delle centinaia di anni di precedenza nel dire (e udire) latitudine, longitudine ovunque.
Antti Haapala,

5

ISO 6709 standardizza elencando l'ordine come latitudine, longitudine per motivi di sicurezza. La spiegazione di Graham sopra sembra corretta anche per me. Qualcuno ha suggerito che questa risposta non è correlata alla domanda - lo è assolutamente e spiega perché l'ordine viene spesso indicato come latitudine, longitudine.

Ecco come è stato elencato per quanto tempo i navigatori abbiano utilizzato il sistema; cambiarlo ora sarebbe confuso e, come suggerisce l'ISO, potenzialmente pericoloso. I software GIS, come ArcMap, li elencano al contrario perché questa è la convenzione tipica per le coppie di coordinate x, y. La latitudine è y, la longitudine è x, quindi Arc li elenca.


1

Longitudine quindi Latitudine (lon, lat).

Quando proiettato su Mercator, la longitudine definisce la direzione x e la latitudine definisce la direzione y. La maggior parte delle librerie di geometria utilizza rigorosamente questo formato di (lon, lat) in quanto è il modo più intuitivo di pensare alle coordinate geografiche in un piano 2D.


3
Quindi, se questo è il modo di pensare più intuitivo, perché il blog di Google Earth si chiama Lat-Long Blog mentre usano lon-lat in KML?
theta,

1
Fondamentalmente, è che i navigatori hanno tradizionalmente usato l'ordinamento lat-lon, quindi se hai sbagliato con quell'ordinamento potresti rovinare le tue navigazioni. Quindi Google sta usando il tradizionale per un blog e l'ordinamento del piano 2D per la loro struttura di dati. @mkennedy risponde al meglio nella sua risposta alla stessa domanda: gis.stackexchange.com/questions/6037/…
David
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.