plotly / plotly/plotly.py

Layer disappears if zoomed out. Reappears when zooming.

Offen
#2,811 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug P3
Vorherrschende Sprache
Python
Sterne
18.8k
Forks
2.8k
Ø Merge
16 Std. 26 Min.
Gemergte PRs (30 T.)
21

Beschreibung

Issue:
Objects will disappear if the zoom level of the graph is increased to a certain amount.

Demo:

  • image

  • Image 1: Zoomed out version of a graph

  • image

  • Image 2: Zoomed in version of the same graph

Specifications:
Plotly Version: 4.10.0

Code:

I included pickled versions of the buildable land / trackers objects here. They are geodataframes.

    # --- Set up base map ---
    fig = go.Figure(go.Scattermapbox())
    fig.update_layout(
        mapbox_accesstoken = token,
        mapbox_style = "mapbox://styles/skrhee/ckbtiaefh0wrr1hp7h4ya3zy4",
        mapbox_zoom = 13,
        mapbox_center = {'lon': centroid_lon, 'lat': centroid_lat},
        margin = {'l':0, 'r':0, 'b':0, 't':0},
        height = 500
        )
     
    layers = []
    # --- Add buildable polygons ---
    full_buildable = MultiPolygon(list(buildable_land['geometry']))
    obj = gd.GeoSeries(full_buildable).to_json()
    poly_json = json.loads(obj)
    
    layer = {
        'source': poly_json,
        'type': "fill",
        'below': "traces",
        'color': "royalblue",
        'opacity': 0.65
        }
    layers.append(layer)
    
    # --- Add tracker polygons ---
    trackers = gd.read_file(df['AL_0.0'][0])
    full_trackers = MultiPolygon(list(trackers['geometry']))
    obj = gd.GeoSeries(full_trackers).to_json()
    poly_json = json.loads(obj)
    
    layer = {
        'source': poly_json,
        'type': "fill",
        'below': "traces",
        'color': "royalblue",
        'opacity': 0.65
        }
    layers.append(layer)


    
    # --- Update Figure ---
    fig.update_layout(
        mapbox = {
            'layers': layers
            }
        )

    st.plotly_chart(fig, use_container_width=True)


[pickles.zip](https://github.com/plotly/plotly.py/files/5343508/pickles.zip)






Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, das Verhalten mit den in fig.update_layout konfigurierten mapbox layers zu reproduzieren, die über st.plotly_chart gerendert werden. Überprüfe, ob die Polygon-Layer über verschiedene Zoomstufen hinweg sichtbar bleiben, und verwende dafür den bereitgestellten Code und die Pickles, sofern sie geladen werden können; abgeschlossen ist die Aufgabe, wenn die Layer beim Herauszoomen nicht mehr verschwinden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
plotly, python
Bereich
data-visualization
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.