ForHosting KIT · Reisen und Geografie

Geohash-Nachbarn finden

Geben Sie einen Geohash ein und erhalten Sie die acht Zellen ringsum, von Norden bis Nordwesten: u4pruyd hat u4pruyf im Norden und u4pruye im Osten, alle mit gleich vielen Zeichen. Kostenlos in Ihrem Browser.

  • Kostenlos
  • Läuft in Ihrem Browser
  • Ohne Anmeldung
  • Ihre Daten bleiben auf Ihrem Gerät
Nutzen Sie es über WebAPIE-MailTelegramApp bald
Wenn Sie eingeben
Geohash-Zeichenkette
u4pruyd
Erhalten Sie
Präzision
7
N
u4pruyf
NO
u4pruyg
O
u4pruye

Ein Geohash-Nachbarn-Finder verwandelt die Kennung einer Zelle in die acht Zellen, die mit ihr eine Kante oder eine Ecke teilen. Fügen Sie einen Base32-Geohash ein — beliebige Präzision von einem bis zwölf Zeichen — und das Werkzeug durchläuft die klassischen Nachbartabellen für gerade und ungerade Längen, um Norden, Nordosten, Osten, Südosten, Süden, Südwesten, Westen und Nordwesten in derselben Länge auszugeben. Räumliche Indizes, Nähe-Caches und Kartenkacheln benötigen diese Moore-Nachbarschaft oft, ohne jede Zelle vorher in Breiten- und Längengrad zu dekodieren.

Was Geohash-Nachbarschaft im Raster bedeutet

Ein Geohash kodiert ein Breiten-Längen-Rechteck als kurze Base32-Zeichenkette, indem er Längen- und Breitenbits verschachtelt und zu Fünf-Bit-Zeichen gruppiert. Die angrenzenden Zellen derselben Präzision sind die acht Rechtecke der Moore-Nachbarschaft, die die mittlere Zelle an einer Kante oder Ecke berühren. Da die Bits nach Parität wechseln, folgt das Zeichen unmittelbar nördlich eines gegebenen letzten Zeichens nicht derselben Tabelle, je nachdem ob die Zeichenkettenlänge gerade oder ungerade ist; produktionsreife Nachbarläufer führen daher zwei Nachschlagezeichenketten pro Richtung plus eine Randtabelle, die angibt, wann das letzte Zeichen einen Schritt auf die Elternebene erzwingt.

Die östlichen und westlichen Nachbarn laufen über den Antimeridian hinaus, sodass eine Zelle am rechten Rand des Globus einen sinnvollen östlichen Nachbarn am linken Rand hat. Norden und Süden laufen nicht über die Pole: Befindet sich eine Zelle bereits am Nord- oder Südrand des globalen Rasters, ist ein weiterer Schritt in diese Richtung außerhalb des Bereichs und wird von diesem Werkzeug abgelehnt. Die Präzision bleibt durchgehend erhalten — übergeben Sie sieben Zeichen, erhalten Sie siebenstellige Nachbarn — sodass Sie die Ergebnismenge ohne Neukodierung direkt in dieselbe Index-Bucket-Familie einfügen können.

Genau diesen Vertrag brauchen Karten-Backends, Lieferradius-Erweiterungen und Unit-Tests für Geohash-Bibliotheken, wenn sie eine Zelle in ihren Ring aus acht expandieren.

Praktische Tipps, Grenzen und verwandte Suchen

Halten Sie die Präzision im veröffentlichten Bereich von einem bis zwölf Zeichen; längere Hashes werden abgelehnt, damit Zwischenläufe über die Elternebene begrenzt bleiben und die Ergebnisse mit den gängigen Bibliotheksvorgaben interoperabel bleiben. Wenn Sie einen k-Ring größer als die unmittelbaren acht aufbauen, rufen Sie dieses Werkzeug für jede Grenzzelle auf und deduplizieren Sie — die Fähigkeit selbst liefert nur den ersten Ring, damit das Verhalten einfach und cachebar bleibt.

Bevorzugen Sie diese Fähigkeit, wenn Sie bereits eine Geohash-Zeichenkette besitzen und nur die acht Angrenzenden derselben Präzision brauchen; ist Ihre Quelle ein Koordinatenpaar, kodieren Sie zuerst mit einem dedizierten Kodierer und expandieren Sie dann. Hin-und-zurück-Prüfungen sind einfach: Wählen Sie ein bekanntes Beispiel wie dqcjq, bestätigen Sie, dass die acht Nachbarn mit einer vertrauenswürdigen Bibliothek übereinstimmen, und prüfen Sie dann, dass ein ungültiges Zeichen wie der Buchstabe a stets mit dem dokumentierten Fehlercode scheitert.

Eine Zelle für Nähe-Abfragen expandieren

Backend-Dienste, die Punkte per Geohash indizieren, fragen die mittlere Zelle plus ihre acht Nachbarn ab, um Punkte zu erfassen, die knapp jenseits einer Zellgrenze liegen.

Kachel- und Heatmap-Ringe

Visualisierungs-Pipelines expandieren einen ausgewählten Geohash in die Moore-Nachbarschaft, um angrenzende Kacheln hervorzuheben, ohne jede Zelle vorher in Breite/Länge zu dekodieren.

Was liefert dieses Geohash-Nachbarn-Werkzeug?

Die acht angrenzenden Zellen derselben Präzision: Norden, Nordosten, Osten, Südosten, Süden, Südwesten, Westen und Nordwesten, plus ein neighbors-Objekt, eine geordnete Liste und die Präzision.

Kodiert oder dekodiert dies Breiten- und Längengrad?

Nein. Es expandiert nur eine vorhandene Geohash-Zeichenkette in ihre acht angrenzenden Zellen derselben Präzision.

Warum sucht man in den Nachbarzellen und nicht nur in einem Geohash?

Zwei sehr nahe Punkte können auf verschiedenen Seiten einer Zellgrenze liegen und unterschiedliche Geohashes erhalten. Wenn Sie die Mittelzelle samt ihren acht Nachbarn durchsuchen, finden Sie diese Punkte, und die Umkreissuche übersieht nichts in der Nähe.

Was passiert mit einer Zelle am nördlichen oder südlichen Rand des Rasters?

Nach Norden und Süden läuft das Raster nicht über die Pole weiter, deshalb wird ein Schritt über den oberen oder unteren Rand abgelehnt. Nach Osten und Westen schließt es dagegen über den Antimeridian hinweg an die andere Seite an.

Haben die Nachbarzellen gleich viele Zeichen wie die Ausgangszelle?

Ja. Geben Sie sieben Zeichen ein, erhalten Sie acht Nachbarn mit je sieben Zeichen. So lassen sich die Ergebnisse direkt im selben Index nachschlagen, ohne dass Sie etwas neu kodieren müssen.

Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.

POSThttps://api.kit.forhosting.com/geo/geohash-neighbors

Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.

curl -X POST https://api.kit.forhosting.com/geo/geohash-neighbors \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"geohash":"u4pruyd"}'
{
  "geohash": "u4pruyd"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "geo.geohash_neighbors",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.

pro Anfrage$0.002

Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.

max_precision12
HTTPCodeBedeutung
401unauthorizedDer API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer).
402insufficient_balanceIhr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht.
404unknown_typeUnbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog.
429rate_limitedZu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt.

Ungültige Alphabetzeichen, leere Zeichenketten, zu hohe Präzision und Nord- oder Süd-Schritte am polaren Rand liefern einen klaren invalid_input-Fehler statt einer stillschweigend falschen Zelle.

So rufen Sie die API auf und was zurückkommt

Der Wert muss ein bis zwölf Zeichen aus dem Base32-Alphabet des Geohash enthalten: die Ziffern null bis neun und die Buchstaben b c d e f g h j k m n p q r s t u v w x y z — die Buchstaben a, i, l und o fehlen absichtlich und scheitern an der Validierung. Führende und nachfolgende Leerzeichen werden entfernt und Buchstaben vor der Verarbeitung in Kleinbuchstaben gewandelt, sodass gemischte Großschreibung auf Client-Seite nicht zwei Hashes für dieselbe Zelle erzeugt. Im Erfolgsfall spiegelt die Antwort den normalisierten Geohash und seine Präzision, liefert ein neighbors-Objekt mit den Schlüsseln n, ne, e, se, s, sw, w und nw, wiederholt diese acht Zeichenketten als Felder oberster Ebene für flache Konsumenten, stellt list als geordnetes Array derselben acht Werte bereit, setzt count auf acht und enthält eine kurze englische Meldung. Senden Sie einen JSON-Body mit einem einzigen Pflichtfeld als Zeichenkette, geohash (Aliase hash und gh). Eine fehlgeschlagene Validierung — fehlendes Feld, kein String, leer nach dem Trimmen, ungültiges Zeichen, Präzision über zwölf oder ein Nord- oder Süd-Schritt am polaren Rand — liefert invalid_input und wird niemals berechnet. Der Preis ist ein Pauschalbetrag von $0.002 pro erfolgreicher Anfrage mit Positionseinheit und marginalem Stückpreis null.

Praktische Tipps, Grenzen und verwandte Suchen

Bevorzugen Sie in neuen Clients den primären Feldnamen geohash; die Aliase hash und gh existieren für kurze Formular-Posts und ältere Codeschnipsel. Polare Ränder sind auf Stadt-Präzision selten, treten aber bei einstelligen und manchen zweistelligen Hashes in Polnähe auf; behandeln Sie invalid_input dort als harte Grenze, statt eine gespiegelte Zelle zu erfinden. Diese Seite richtet sich an Suchende nach Geohash-Nachbarn, angrenzenden Geohash-Zellen oder einem Geohash-Nord-Süd-Ost-West-Finder; sie ist kein Breiten-Längen-Kodierer, kein Dekodierer zu Begrenzungsrahmen und keine Radiussuche in Kilometern. Fehlgeschlagene Aufgaben, die invalid_input zurückgeben, verbrauchen kein vorausbezahltes Guthaben, was explorative Skripte günstig hält, wenn Sie absichtlich ungültige Alphabete testen.

Unit-Tests für Geohash-Bibliotheken

Erzeugen Sie deterministische erwartete Nachbarkarten für gerade und ungerade Präzision sowie Ablehnungen bei ungültigem Alphabet und polarem Rand — für Coding-Katas und golden-Dateien von Bibliotheken.

Welche Zeichen sind in einem Geohash gültig?

Die Base32-Ziffern 0–9 und die Buchstaben bcdfghjkmnpqrstuvwxyz. Die Buchstaben a, i, l und o werden nicht verwendet und lösen invalid_input aus.

Laufen Osten und Westen um den Globus herum?

Ja. Der Längengrad läuft über den Antimeridian. Norden und Süden laufen nicht über die Pole; Schritte am polaren Rand liefern invalid_input.

Ist der Geohash-Nachbarn-Finder kostenlos?

Das Browser-Werkzeug ist kostenlos und läuft lokal. API-Aufrufe nutzen vorausbezahltes KIT-Guthaben zu $0.002 pro erfolgreicher Anfrage; fehlgeschlagene Aufgaben werden nie berechnet.

Vollständige KIT-Dokumentation lesen →