Violin plot with 'name' attribute set as Datetime gets flattened out
まだ誰も着手していません。
- 主要言語
- Python
- スター
- 18.8k
- フォーク
- 2.8k
- 平均マージ
- 16時間 26分
- マージ済み PR(30日)
- 21
説明
I'm trying to make a horizontally oriented ridge plot . Following is the code
plotly.version == 5.3.1
Ridgeline plot
base_date = dt.datetime.strptime(start_date,'%Y-%m-%d')
fig = go.Figure()
for day in range(days) :
offset = dt.timedelta(days=day)
date = (base_date + offset).strftime('%Y-%m-%d')
violin_plot_data = swData[date]
fig.add_trace(go.Violin(x = violin_plot_data.loc[:,metric_name] ,
orientation = 'h',
width = 3 ,
side = 'positive',
meanline_visible=True,
points = False
)
)
fig.show()
I'm getting the following output :

However I wish to set "name" attribute for individual dates . I did the following
Ridgelin plot
base_date = dt.datetime.strptime(start_date,'%Y-%m-%d')
fig = go.Figure()
for day in range(days) :
offset = dt.timedelta(days=day)
date = (base_date + offset).strftime('%Y-%m-%d')
violin_plot_data = swData[date]
fig.add_trace(go.Violin(x = violin_plot_data.loc[:,metric_name] ,
orientation = 'h',
width = 3 ,
side = 'positive',
name = date,
meanline_visible=True,
points = False
)
)
fig.show()
The output that I'm getting is

Kindly clarify if it's a bug in the framework or a silly mistake from my side . TY :)
EDIT : I've found a work around and answered it here [https://stackoverflow.com/a/69894008/6571670] but I feel Plotly should be able to parse dates explicitly
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
Plotly 5.3.1で提供されたridge-plotの例を再現し、まず各violin traceのnameとしてdatetime文字列を渡さない場合、次に渡す場合を試す。violinの名前がどのように解析・レンダリングされるかを追跡し、その後、日付ラベルが区別されたままでプロットが平坦化されないことを確認する。報告されたworkaroundはリグレッションケースとして保持する。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- python
- 領域
- data-visualization
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 活発
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 55/100