Visualisieren Sie den zurückgelegten Weg in Vektorkarten
Dieses Beispiel zeigt, wie Sie Breiten- und Längengraddaten in Ihrem ThingSpeak™-Kanal-Feed auf einer Karte visualisieren. Sie können die von Mapping Toolbox bereitgestellte Vektorkarte verwenden und den von Mary Maersk zurückgelegten Weg darstellen.
Daten lesen
ThingSpeak Kanal 73734 enthält die Standortdaten des Schiffs Mary Maersk. Lesen Sie die Standortdaten der letzten 10 Tage mit der Funktion thingSpealRead.
data = thingSpeakRead(73734,'DateRange',... [datetime('today')-caldays(10),datetime('today')],'outputFormat','table');
Rohdaten verarbeiten
Verarbeiten Sie die Rohdaten zu Längen- und Breitengrad, bevor Sie die Daten auf der Karte darstellen. Speichern Sie die Breiten- und Längengradinformationen in separaten Variablen lat und lon.
lon = data.Longitude; lat = data.Latitude;
Verwenden Sie die Funktion geoquadline, um die Grenzen des engsten möglichen geografischen Vierecks zu finden, das eine Linie begrenzt, die Scheitelpunkte mit geografischen Koordinaten verbindet, die durch lat und lon angegeben sind.
[latlim,lonlim] = geoquadline(lat,lon);
Um die Karte besser lesbar zu machen, erweitern Sie die Breiten- und Längengradgrenzen mit der Funktion bufgeoquad um 10 Einheiten.
buf = 10; [latlim,lonlim] = bufgeoquad(latlim,lonlim,buf,buf);
Vektorkarte abrufen
Rufen Sie die von der Funktion worldmap bereitgestellte Vektorkarte für den gewünschten Bereich ab. Definieren Sie außerdem die Farbe des Ozeans, um zwischen Ozean und Landmasse zu unterscheiden.
ax = worldmap(latlim,lonlim);
oceanColor = [.5 .7 .9];
setm(ax, 'FFaceColor',oceanColor);

Generieren Sie die Karte
Verwenden Sie die von der Funktion worldmap zurückgegebene Vektorkarte, um ein Diagramm der Route zu erstellen, die das Schiff Mary Maersk in den letzten 10 Tagen zurückgelegt hat. Laden und verwenden Sie die Küstenliniendaten, um die Ränder jedes Kontinents zu markieren.
load coastlines; geoshow(lat,lon,'Color','k'); hold on; geoshow(coastlat,coastlon,'FaceColor','yellow','DisplayType','polygon'); title('Polygon Geographic Vector Data');

Die Vektorkarte zeigt, wohin die Mary Maersk in den letzten 10 Tagen gefahren ist.
Siehe auch
Funktionen
geoquadline(Mapping Toolbox) |bufgeoquad(Mapping Toolbox) |worldmap(Mapping Toolbox) |geoshow(Mapping Toolbox) |thingSpeakRead