| Schlüsselbegriffe | Wichtige Details |
|---|---|
| 📖 Definition | GraphHopper ist eine Open-Source-Routenberechnungs-Engine. |
| 🚴 Vorteile | Optimierte Routen für das Fahrrad unter Berücksichtigung von Sicherheit und Komfort. |
| ⚙️ Installation | Docker oder lokale Installation je nach Bedarf. |
| 🛣️ Fahrradprofile | Anpassung des Fahrradtyps und der Streckenpräferenzen. |
| 🎯 Personalisierung | Geschwindigkeits-, Höhenprofil- und stark befahrene Straßen-Vermeidungsparameter. |
| 📤 Export & Integration | GPX, JSON und JavaScript-Integration in Ihre WordPress-Seiten. |
Wenn Sie davon träumen, maßgeschneiderte Fahrradstrecken zu erstellen, erweist sich GraphHopper als robuster und flexibler Verbündeter. Hinter seiner minimalistischen Oberfläche verbirgt sich eine leistungsstarke Engine, die OpenStreetMap-Daten verarbeitet, um die am besten an Ihre Wünsche angepasste Route zu berechnen, sei es eine urbane Tour oder eine mehrstufige Strecke. Dieser Artikel führt Sie Schritt für Schritt, von der Installation des Dienstes bis zum Export Ihrer Tracks, einschließlich der feinen Anpassung der Fahrradprofile.
Sommaire
Warum GraphHopper für den Fahrradtourismus wählen?
GraphHopper ist nicht nur ein einfaches Routing-Tool: Es basiert auf einer aktiven Community, regelmäßigen Updates und einer GPLv3-Basis. Sie profitieren von einem immer weiter optimierten Algorithmus für das Fahrrad, der neue Radwege und Fahrradstraßen integriert. Im Vergleich zu anderen Lösungen zeigt sich, dass seine Modularität (JSON-Profil, HTTP-API) große Freiheit bietet, insbesondere wenn Sie es auf Ihrem eigenen Server hosten möchten, um nicht von Drittanbieterdiensten abhängig zu sein.
Zuverlässigkeit und Leistung
Das Herzstück von GraphHopper basiert auf komprimierten Datenstrukturen, die die Berechnung im Speicher beschleunigen. Ergebnis: Ihre Anfragen für Fahrradstrecken werden in wenigen Millisekunden ausgeführt, selbst bei einem Datensatz, der ein ganzes Land abdeckt.
Flexibilität der Profile
Man kann ein Profil „Stadtrad“, „Rennrad“ oder „Mountainbike“ definieren, indem man die Durchschnittsgeschwindigkeiten und die zu vermeidenden Straßentypen anpasst. Diese sehr granulare Einstellung verbessert die Qualität der dem Nutzer vorgeschlagenen Route erheblich.
Installation und erste Konfiguration
Über Docker
Starten Sie GraphHopper mit wenigen Befehlen: Laden Sie das offizielle Image, binden Sie ein Volume für die OSM-Daten ein und öffnen Sie den HTTP-Port. Dieser Ansatz isoliert Ihre Umgebung und garantiert ein vereinfachtes Update.
docker pull graphhopper/graphhopper
docker run -d -v cheminguide/osm:/data -p 8989:8989 graphhopper/graphhopper
Lokale Installation
Wenn Sie selbst kompilieren möchten, klonen Sie das GitHub-Repository, installieren Sie Java 11 und Maven und führen Sie dann aus:
mvn clean package -DskipTests
Kopieren Sie anschließend Ihre OpenStreetMap-PBF-Datei in den Ordner graphs und starten Sie die Anwendung mit java -jar web/target/graphhopper-web-*.jar server config.yml.
Erstellung benutzerdefinierter Fahrradprofile
Der Kern der Anpassung liegt in den JSON-Dateien unter profiles. Beispiel für ein Mountainbike (MTB):
{
"profiles": [
{
"name": "vtt",
"vehicle": "bike",
"weighting": "fastest",
"turn_costs": false,
"hints": {"elevation": true}
}
]
}
Durch Anpassung von weighting und hints beeinflussen Sie die Wahl der Wege: Waldwege, Radwege oder Nebenstraßen.
Ein gemischtes Profil hinzufügen
Für eine Route, die Asphaltstraßen und Pfade kombiniert, kopieren Sie den JSON-Block eines bestehenden Profils, ändern die Eigenschaft vehicle zu custom_bike und erstellen Sie ein Rezept in graphhopper.yml, um Ihr gemischtes Profil zu laden.
Generierung maßgeschneiderter Routen
Sobald der Dienst bereit ist, fragen Sie die REST-API mit einem POST an /route unter Angabe Ihres Profils und Ihrer Koordinaten ab:
{
"points": [[48.8566,2.3522],[45.7640,4.8357]],
"profile": "bike",
"locale": "fr"
}
Das zurückgegebene Ergebnis enthält mehrere Abschnitte, darunter paths für die GPS-Spur und instructions für jeden Abschnitt, mit Zoomstufe und Abbiegeinformationen.
Export und Integration in WordPress
Um Ihre interaktive Karte einzubinden, können Sie:
- Die GPX-Spur in einem dedizierten JavaScript-Player anzeigen.
- Die GraphHopper-API direkt hinter einem WordPress-Shortcode bereitstellen.
In einer PHP-Vorlage holen Sie die JSON-Punkte ab, konvertieren sie in GeoJSON und integrieren sie über Leaflet oder OpenLayers. Wenn Sie die Darstellung erweitern möchten, können Sie eine Straßenkarte von Frankreich als Hintergrund anzeigen, um Ihre Routen zu verorten.
Erweiterte Anwendungsfälle und bewährte Praktiken
Neben der Fahrradplanung wird GraphHopper auch für spezifischere Routen verwendet, zum Beispiel die Route der Loire-Schlösser oder für Strecken mit starken Höhenunterschieden. Denken Sie daran:
- Aktualisieren Sie regelmäßig Ihre OSM-Daten, um von den neuesten Wegen zu profitieren.
- Testen Sie mehrere Profile, bevor Sie in Produktion gehen.
- Begrenzen Sie gleichzeitige Anfragen oder cachen Sie Antworten, um Überlastungen zu vermeiden.
FAQ
Benötigt man einen leistungsstarken Server, um GraphHopper zu hosten?
Ein VPS mit 2 vCPU und 4 GB RAM reicht für die Fahrradnutzung in einem ganzen Land aus. Darüber hinaus sollten Sie auf 8 GB für sehr dichte Gebiete erhöhen.
Wie erhält man einen GPS-kompatiblen GPX-Export für Wanderungen?
Die API liefert bereits ein Punktarray, das für das GPX-Format geeignet ist. Es genügt, diesen JSON-Stream in XML-Tags <trkpt> umzuwandeln.
Kann man mehrere Verkehrsmittel kombinieren?
Ja: Erstellen Sie separate Profile für jeden Abschnitt (Fahrrad + Zug, Fahrrad + Fähre) und synchronisieren Sie die Übergangspunkte.