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

我正在使用 Plotly 的散点图来可视化多个数据集。


这是我的代码的一部分。下面,我创建了 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')

我对多个数据框执行此操作,这使我可以轻松地比较它们。结果很整洁,看起来像这样:

http://img2.mukewang.com/63e20c5b0001443822011242.jpg

不幸的是,它的范围似乎是使用每个散射极化实例theta的最大值自动计算的。r

这不好,因为为了轻松比较数据集,我需要theta所有绘图都在同一范围内。

问题:如何将 的范围设置theta为自定义值,例如从 1 到 100?


慕妹3146593
浏览 115回答 2
2回答

慕村9548890

在radialaxis=dict(visible=True, )),你应该能够添加range=[ 1,100 ]

米琪卡哇伊

作为补充,因为我花了一个多小时才弄清楚:如果你正在处理子图,这条线可能是你的朋友:fig.update_polars(radialaxis=dict(range=[0, 1]))这会将范围应用于所有子图。如果你只是打电话fig.update_layout(),它只会将范围应用于第一个子图。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python