簡體   English   中英

Plotly 的 Scatterpolar:如何更改 theta 的范圍?

[英]Plotly's Scatterpolar: How to change theta's range?

我正在使用 Plotly 的 scatterpolar 圖表來可視化幾個數據集。

這是我的代碼的一部分。 下面,我創建了 scatterpolar 實例:

go.Scatterpolar(
    r=[dataset_dataframe['word_count'].median(),
       dataset_dataframe['char_count'].median(),
       dataset_dataframe['capitals'].median(),
       dataset_dataframe['num_exclamation_marks'].median(),
       dataset_dataframe['num_punctuation'].median()],

    name=dataset_name,
    theta=['No. of Words', 'No. of Characters', 'No. of Capitals', 'No. of Exclamation Marks', 'No. of Punctuations'],
    fill='toself',
    line=dict(color='brown'),
    subplot=subplot_name),
)

在這里我把它放在一個布局中:

fig.update_layout(
    polar=dict(
    radialaxis=dict(visible=True, )),
    title='Dataset Statistics')

我對多個數據框執行此操作,這使我可以輕松地比較它們。 結果很整潔,看起來像這樣:

在此處輸入圖像描述

不幸的是, theta的范圍似乎是使用每個 scatterpolar 實例的r的最大值自動計算的。

這不好,因為為了輕松比較數據集,我需要所有圖的theta都在同一范圍內。

問題:如何將theta的范圍設置為自定義值,例如從 1 到 100?

radialaxis=dict(visible=True, )),您應該能夠添加range=[ 1,100 ]

作為一個補充,因為我花了一個多小時才弄清楚:如果你正在使用子圖,這條線可能是你的朋友:

fig.update_polars(radialaxis=dict(range=[0, 1]))

這會將范圍應用於所有子圖。 如果您只是調用fig.update_layout()它只會將范圍應用於第一個子圖。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM