Eine Karte lässt sich lokal erzeugen, während ihre Küstenlinien oder andere Referenzdaten noch heruntergeladen werden müssen. Kann Cartopy eine benötigte Ressource nicht finden, holt der Standard-Downloader sie, bevor das Plotten abgeschlossen ist.

Dieser Downloader nutzt urllib.request.urlopen von Python. Für einen HTTP-Forward-Proxy, der beide Zielschemas bedient, starten Sie den Plotprozess mit einer Umgebung wie:

export http_proxy=http://proxy.example:8080
export https_proxy=http://proxy.example:8080

Der Proxy gehört in die Umgebung, die der tatsächliche Python-Prozess erbt. Ein bereits laufender Notebook-Kernel oder ein Desktop-IDE braucht möglicherweise eine eigene Startkonfiguration. Für Jupyter konfigurieren Sie die Startumgebung des ausgewählten Kernels vor der Datenbeschaffung. Die HTTPS-Variable darf weiterhin eine HTTP-Proxy-URL enthalten. Öffentliche Referenzdaten-Downloads können einen HTTP-Eintrag aus der HTTP-Proxy-Liste verwenden, sofern diese Route erlaubt ist und kein Proxy-Konto eingerichtet ist.

Sehen Sie sich die angeforderte Daten-URL in der Download-Warnung oder der Ausnahme an. Eine fehlende Datenressource, eine Proxy-Abfrage und ein HTTPS-Vertrauensfehler treten an unterschiedlichen Stellen auf; eine andere Projektion repariert die Netzwerkroute des Downloaders nicht.

Für einen Rechner, der offline bleiben soll

Stellen Sie den benötigten Datensatz vorab bereit und zeigen Sie Cartopy auf dessen Wurzel:

from pathlib import Path
import cartopy

cartopy.config['pre_existing_data_dir'] = Path('/srv/map-data')

Das Verzeichnis braucht die vom jeweiligen Downloader erwartete Struktur, einschließlich der vollständigen Datensatzdateien. Ein Ordner mit einem beliebigen Archiv ist nicht automatisch der Ressourcenpfad, den Cartopy sucht.

pre_existing_data_dir wird vor data_dir geprüft. Fehlt die Ressource an beiden Orten, kann ein herunterladbarer Eintrag dennoch eine Beschaffung nach data_dir auslösen, das beschreibbar sein muss. Das Setzen des vorbestehenden Verzeichnisses ist daher eine Suchentscheidung und kein globaler Schalter „niemals das Netzwerk nutzen“.

Bereiten Sie jede Auflösung und jedes Objekt vor, die die geplanten Plots benötigen. Eine früher erfolgreiche grobe Karte belegt nicht, dass eine detailliertere Küstenlinie bereits vorliegt. Kachel-Dienste und eigene Downloader können ihre eigenen Abrufregelungen haben.

Ähnliche Artikel