Main Content

Diese Seite wurde mithilfe maschineller Übersetzung übersetzt. Klicken Sie hier, um die neueste Version auf Englisch zu sehen.

Visualisieren Sie zurückgelegte Pfade 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 der Mapping Toolbox bereitgestellte Vektorkarte verwenden und den von Mary Maersk zurückgelegten Weg einzeichnen.

Daten lesen

Der ThingSpeak Kanal 73734 enthält die Standortdaten des Mary Maersk-Schiffes. Lesen Sie die Standortdaten der letzten 10 Tage mit der Funktion thingSpealRead aus.

data = thingSpeakRead(73734,'DateRange',...
    [datetime('today')-caldays(10),datetime('today')],'outputFormat','table');

Rohdaten verarbeiten

Verarbeiten Sie die rohen Breiten- und Längengraddaten, bevor Sie die Daten auf der Karte darstellen. Speichern Sie die Breiten- und Längengradinformationen in den 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 ermitteln, das eine Linie begrenzt, die Eckpunkte mit geografischen Koordinaten verbindet, die durch lat und lon angegeben werden .

[latlim,lonlim] = geoquadline(lat,lon);

Um die Karte besser lesbar zu machen, erweitern Sie die Breiten- und Längengrenzen 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 interessierenden 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 eine Darstellung der Route zu erstellen, die das Schiff Mary Maersk in den letzten 10 Tagen zurückgelegt hat. Laden Sie die Küstenliniendaten und markieren Sie sie, 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 gereist ist.

Siehe auch

Funktionen