Warum führt das Hinzufügen von Höhe zu Punkten in Kepler.gl führt zu Problemen?
Posted: 18 Mar 2025, 18:53
Ich verwende Kepler.gl in Python, um Trajektorien auf einer Karte zu visualisieren. Jede Flugbahn wird durch eine separate Schicht dargestellt, wobei die Daten aus den Werten mit Breitengrad, Längengrad und Höhen besteht. Obwohl ich die Opazität auf 100%festgelegt habe, die Umrissbreite auf 0 und der Schichtmischmodus auf "normal", stieß ich auf ein Problem, wenn ich Höhenwerte in die Visualisierung einbeziehe. Es scheint, dass ein Punkt über einer anderen Stelle nur in eine Richtung korrekt mischt. Im folgenden Beispiel ist die Grenze sichtbar, wenn ein Punkt oben und rechts von einem anderen Punkt positioniert ist. Wenn der Punkt jedoch über und nach links ist, ist die Kontur nicht sichtbar. < /P>
Punkte überlappen sich auf einer Karte. Der Z-Wert repräsentiert die Höhe, wobei höhere Werte höhere Höhen anzeigen.
Hat jemand auf ein ähnliches Problem gestoßen, wenn Punkte in 3D in kepler.gl verfolgt werden? Wie kann ich es lösen?
Punkte überlappen sich auf einer Karte. Der Z-Wert repräsentiert die Höhe, wobei höhere Werte höhere Höhen anzeigen.
Code: Select all
import pandas as pd
import numpy as np
from keplergl import KeplerGl
num_points = 100
start_lat, start_lng, start_alt = 37.77, -122.42, 0
data = {
"latitude": np.linspace(start_lat, start_lat + 0.01, num_points),
"longitude": np.linspace(start_lng, start_lng + 0.01, num_points),
"altitude": np.linspace(start_alt, start_alt + 100, num_points) + np.random.uniform(-5, 5, num_points)
}
df = pd.DataFrame(data)
map_ = KeplerGl(height=600)
config = {
"version": "v1",
"config": {
"visState": {
"layers": [
{
"id": "point_layer",
"type": "point",
"config": {
"dataId": "trajectories",
"label": "Trajectory",
"color": [255, 0, 0],
"columns": {
"lat": "latitude",
"lng": "longitude",
"altitude": "altitude"
},
"isVisible": True,
"visConfig": {
"radius": 10,
"opacity": 1.0,
"outline": False,
"strokeWidth": 0,
"blending": "normal"
}
}
}
]
}
}
}
map_.add_data(df, "trajectories")
map_.config = config
map_