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

Ave*_*nus 1 python scatter-plot plotly

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

这是我的代码的一部分。下面,我创建了 scatterpolo 实例:

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),
)
Run Code Online (Sandbox Code Playgroud)

我在这里将其放入布局中:

fig.update_layout(
    polar=dict(
    radialaxis=dict(visible=True, )),
    title='Dataset Statistics')
Run Code Online (Sandbox Code Playgroud)

我对多个数据框执行此操作,这使我可以轻松比较它们。结果很简洁,如下所示:

在此输入图像描述

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

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

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

kon*_*nse 7

作为补充,因为我花了一个多小时才弄清楚:如果您正在处理子图,这一行可能是您的朋友:

fig.update_polars(radialaxis=dict(range=[0, 1]))
Run Code Online (Sandbox Code Playgroud)

这会将范围应用于所有子图。如果您只是调用它,fig.update_layout()它只会将范围应用于第一个子图。