Layer disappears if zoomed out. Reappears when zooming.
未关闭
还没有人认领这个 Issue。
bug
P3
- 主要语言
- Python
- 星标
- 18.8k
- 派生
- 2.8k
- 平均合并
- 16 小时 26 分钟
- 30 天内合并 PR
- 21
描述
Issue:
Objects will disappear if the zoom level of the graph is increased to a certain amount.
Demo:
-

-
Image 1: Zoomed out version of a graph
-

-
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)
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
首先,使用在 fig.update_layout 中配置并通过 st.plotly_chart 渲染的 mapbox layers 复现该行为。使用提供的代码和 pickles(如果可以加载)验证多边形图层在不同缩放级别下是否仍然可见;缩小时图层不再消失即表示完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- plotly, python
- 领域
- data-visualization
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 35/100