plotly / plotly/plotly.js

add shared axis for Scattergeo and other map plots

オープン
#6,813 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

feature P3
主要言語
JavaScript
スター
18.3k
フォーク
2k
平均マージ
2日 12時間
マージ済み PR(30日)
28

説明

I am trying to create two scattergeo-maps with synchronized axis. It seems like this feature is not implemented, but it would be very helpful. Are there any known workarounds?

Please find a minimal code example below.

from plotly.subplots import make_subplots
import plotly.graph_objects as go

# Geoscatter problem: axis are not synchronized
f_sub = make_subplots(1,2, shared_xaxes="all", shared_yaxes="all", specs=[[{"type": "scattergeo"}, {"type": "scattergeo"}]])

fig1 = go.Figure(go.Scattergeo())
fig2 = go.Figure(go.Scattergeo())

f_sub.add_traces(fig1.data, rows=1, cols=1)
f_sub.add_traces(fig2.data, rows=1, cols=2)

f_sub.show()

# Example for scatter (synchronised axis works)
f_sub = make_subplots(1,2, shared_xaxes="all", shared_yaxes="all")

fig1 = go.Figure(go.Scatter())
fig2 = go.Figure(go.Scatter())

f_sub.add_traces(fig1.data, rows=1, cols=1)
f_sub.add_traces(fig2.data, rows=1, cols=2)

f_sub.show()

Here is a gif of the example that shows how Scatter has a shared x axis, but not Scattergeo (zoom of the map on the left side does not get update):
shared_axis

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

まず、2つのscattergeoプロットを使用した最小限のmake_subplots例を再現し、動作するScatter例と比較します。scattergeoでshared_xaxesとshared_yaxesがどのように扱われているかを追跡します。1つの地図をズームするともう1つが更新され、Scatterの同期された軸にリグレッションが発生しなければ完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
javascript, python
領域
data-visualization
issue の種類
機能追加
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。