WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Mercator Koordinatennetz

 

Kiritsugu
Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 02.04.21
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.04.2021, 00:18     Titel: Mercator Koordinatennetz
  Antworten mit Zitat      
Hallo.

Wie kann ich mir für die Mercatorprojektion das Gradnetz (Längengrad, Breitengrad) anzeigen lassen? Ich möchte bzw. darf bei

Code:
landareas = shaperead('landareas.shp','UseGeoCoords',true);
axesm ('mercator', 'Frame', 'on', 'Grid', 'on');
geoshow(landareas);

nicht auf grid on zurückgreifen. Die Mercatorabbildung lautet -->siehe Anhang... Wobei R der Radius der Kugel im gezeichneten Maßstab der Karte ist. Das Problem ist auch, ich weiß ja dann nicht wie groß die Karte ist, wenn ich die vorgefertigte Matlab Mercatorkarte nehme oder kann man das irgendwo sehen? Und ob die Maße dann vom Rand des Plots gehen oder von der Karte selber ist auch nochmal entscheidend. Nach dem Gradnetz muss ich nämlich Punkte an Stelle bestimmter Städte dort eintragen, d.h. es ist sehr wichtig das ich den Maßstab kenne. Würdet ihr mir eher empfehlen irgeneine aus dem Internet zu nehmen, wo ich den Maßstab kenne?

Zu meiner eigentlichen Frage zurück: Wenn ich das Gradnetz ohne grid on plotte, gibt es dann einen seperaten Befehl für Längen- und Breitengrad oder kann ich es irgendwie mit meshgrid + der Abbildungsvorschrift machen?

Mercator Formel.PNG
 Beschreibung:

Download
 Dateiname:  Mercator Formel.PNG
 Dateigröße:  5.89 KB
 Heruntergeladen:  235 mal
Private Nachricht senden Benutzer-Profile anzeigen


wusa
Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 20.06.17
Wohnort: Berlin
Version: 2021
     Beitrag Verfasst am: 11.04.2021, 10:31     Titel:
  Antworten mit Zitat      
Hallo Kiritsugu,
ohne auf die Formel einzugehen. So habe ich es gemacht:
Code:

latlim = [25 50]; lonlim = [-105 -67];  % Breiten- und Laengengrad-Bereich definieren
                                        % Teilbereich klappt

% latlim = [-90 90]; lonlim = [-180 180];  gesamte Darstellung haut nicht
% hin,

axe = usamap(latlim, lonlim);

landareas = shaperead('landareas.shp','UseGeoCoords', true, 'BoundingBox', [lonlim', latlim']);
geoshow(landareas);
 

Viele Grüße
Michael

mercator_projection.m
 Beschreibung:
Skript

Download
 Dateiname:  mercator_projection.m
 Dateigröße:  407 Bytes
 Heruntergeladen:  250 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Kiritsugu
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 02.04.21
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.04.2021, 11:10     Titel:
  Antworten mit Zitat      
Vielen Dank Michael, es haut hin wenn man z.B. -86 bis 86 Grad in der Breite nimmt, für -90 bis 90 werden nämlich die y-Werte unendlich groß. Hätt' ich eigentlich mal dazu schreiben können, hab ich aber auch nicht mehr dran gedacht Very Happy Gerade weil die Darstellung in Richtung der Pole von -90 bis 90 aber so verzerrt ist glaub ich dir das es sich um die Mercatorprojektion handelt. Meine Frage wäre jetzt, warum ist das so? Also welcher Befehl bewirkt das? Und mit der Funktion geht das gar nicht? Wie könnte man sich noch mehr Längen- und Breitengrade anzeigen lassen?
Private Nachricht senden Benutzer-Profile anzeigen
 
wusa
Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 20.06.17
Wohnort: Berlin
Version: 2021
     Beitrag Verfasst am: 11.04.2021, 11:46     Titel:
  Antworten mit Zitat      
Bitteschön!
Ich habe noch etwas probiert (Voriges komplett wegkommentiert):
Code:

axe = worldmap('Europe');         % worldmap('World') geht für weltweit auch
% setm(axe, 'Origin', [0 180 0])  % benutzt mit worldmap('World')

landareas = shaperead('landareas', 'UseGeoCoords', true);
geoshow(axe, landareas, 'FaceColor', [0.5 0.7 0.5])

cities = shaperead('worldcities', 'UseGeoCoords', true);  % europecities gibt's nicht

x1 = (13.405);   % Berlin Longitude
y1 = (52.520);   % Berlin Latitude

x2 = (9.994);    % Hamburg Longitude
y2 = (53.551);   % Hamburg Latitude

%  Koordinaten von: https://www.latlong.net/place/hamburg-germany-8766.html
%  passt nicht ganz mit dem, was bei worldcities hinterlegt ist, also Pkt.
%  werden nicht genau getroffen

plotm(y1,x1, 'x', 'MarkerSize', 10, 'LineWidth', 2);  % hier muss zuerst y dann x
hold on;
plotm(y2,x2, 'x', 'MarkerSize', 10, 'LineWidth', 2);
textm(y1,x1, 'Berlin')
textm(y2,x2, 'Hamburg')

geoshow(cities, 'Marker', '.', 'Color', 'red')


mercator_projection.m
 Beschreibung:
Skript

Download
 Dateiname:  mercator_projection.m
 Dateigröße:  1.32 KB
 Heruntergeladen:  251 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
wusa
Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 20.06.17
Wohnort: Berlin
Version: 2021
     Beitrag Verfasst am: 11.04.2021, 11:49     Titel:
  Antworten mit Zitat      
Kiritsugu hat Folgendes geschrieben:
Meine Frage wäre jetzt, warum ist das so? Also welcher Befehl bewirkt das? Und mit der Funktion geht das gar nicht?


Das kann ich so nicht auf die Schnelle beantworten, sorry. Muss man noch genauer in der Dokumentation der Befehle nachforschen.
Private Nachricht senden Benutzer-Profile anzeigen
 
wusa
Forum-Anfänger

Forum-Anfänger


Beiträge: 42
Anmeldedatum: 20.06.17
Wohnort: Berlin
Version: 2021
     Beitrag Verfasst am: 11.04.2021, 12:15     Titel:
  Antworten mit Zitat      
1. Post nochmal angepasst um setm(...
Code:

latlim = [25 50]; lonlim = [-105 -67];  % Breiten- und Laengengrad-Bereich definieren
                                       
axe = usamap(latlim, lonlim);
setm(axe,'MapProjection','mercator')
% https://www.mathworks.com/help/map/ref/setm.html

landareas = shaperead('landareas.shp','UseGeoCoords', true, 'BoundingBox', [lonlim', latlim']);
geoshow(landareas);
 
Private Nachricht senden Benutzer-Profile anzeigen
 
Kiritsugu
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 02.04.21
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.04.2021, 15:41     Titel:
  Antworten mit Zitat      
Fettes Dankeschön! Was würd ich nur ohne euch Forumlegends machen Laughing
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.