UI revision does not work while specifying projection type
まだ誰も着手していません。
- 主要言語
- JavaScript
- スター
- 18.3k
- フォーク
- 2k
- 平均マージ
- 2日 12時間
- マージ済み PR(30日)
- 28
説明
i’ve been unable to make uirevision to work while using the orthographic projection on 3D scatter plot using graph object.
here’s a simplified example (i'm not as familiar with JS , therefore the example is in python.) :
import dash
from dash import dcc, html
from dash.dependencies import Input, Output
import plotly.graph_objs as go
import pandas as pd
from numpy.random import randn
# Sample data
data = {
'sepal_width': [3.5, 3.0, 3.2, 3.1, 3.6],
'sepal_length': [5.1, 4.9, 4.7, 4.6, 5.0],
'petal_length': [1.4, 1.4, 1.3, 1.5, 1.4],
}
data2 = {
'sepal_width': [3.5, 3.0, 3.2, 3.1, 3.6]*3,
'sepal_length': [5.1, 4.9, 4.7, 4.6, 5.0]*2,
'petal_length': [1.4, 1.4, 1.3, 1.5, 1.4]*1,
}
df = pd.DataFrame(data)
# Initial Figure
scatter_figure = go.Figure()
scatter_figure.layout.uirevision = True
scatter_figure.layout.scene.camera.projection.type = 'orthographic'
# Add 3D Scatter Plot Trace
scatter_figure.add_trace(
go.Scatter3d(
x=df['sepal_width'],
y=df['sepal_length'],
z=df['petal_length'],
mode='markers',
marker=dict(
size=12,
opacity=0.7,
),
scene='scene',
)
)
# Dash app
app = dash.Dash(__name__)
# Layout
app.layout = html.Div([
dcc.Graph(
id='scatter-plot',
figure=scatter_figure,
),
dcc.Checklist(
id='toggle-checklist',
options=[
{'label': 'Toggle Plot', 'value': 'toggle'}
],
value=['toggle'],
),
])
# Callback to toggle plot visibility
@app.callback(
Output('scatter-plot', 'figure'),
[Input('toggle-checklist', 'value')]
)
def toggle_plot(value):
if 'toggle' in value:
# If 'toggle' is in the value, show the plot
return scatter_figure
else:
df = data2
scatter_figure.add_trace(
go.Scatter3d(
x=df['sepal_width'],
y=df['sepal_length'],
z=df['petal_length'],
mode='markers',
marker=dict(
size=12,
opacity=0.7,
),
scene='scene',
)
)
return scatter_figure
# Run the app
if __name__ == '__main__':
app.run_server(debug=True,port = 8078)
every time I'm toggling the check box the view completely reversed to its original position, and only when I'm specifying projection to be orthographic , works perfectly on perspective.
I'd really appeiciate you looking into this :)
Happy New Year and thanks in advance.
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
提供された Dash/Python の再現コードから始め、scene.camera.projection.type が orthographic に設定されている場合の 3D 散布図における uirevision の動作に焦点を当てます。正投影と透視投影で checklist の切り替えを比較します。完了条件は、プロットを切り替えたときにカメラビューが現在の位置に留まることです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- javascript
- 領域
- data-visualization
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 35/100