【问题标题】:Hoverover template Label titles change plotly python悬停模板标签标题更改python
【发布时间】:2021-02-12 21:10:17
【问题描述】:

我正在尝试更改悬停模板以显示模型名称、分数和缩放技术,我能够显示前两个标题,但我无法成功在工具提示悬停中显示第三个(即变量图例) .

下面是附件图片,我可以在其中更改前两个的悬停模板。我需要将第三个标签 Model:%{Model_Names} 替换为图例变量名,有人可以帮忙

下面是我的代码。

import plotly.express as px

fig = px.bar(compareModels_aft_Cleansing, x="Base_Models", y=["Base_Models_Scores", 
                                                     "Standard_scaled_scores", "Min_Max_scaled_scores", 
                                                     "Scaling & feature selection_scores"],
              title="Training Scores", barmode='group', text = 'value',
            hover_name="Base_Models",
            hover_data={'Base_Models':False}, # remove species from hover data                     
                            )
Model_Names = ['Base_Models_Scores', 'Standard_scaled_scores', 'Min_Max_scaled_scores']
fig.update_traces(hovertemplate = '%{label}: <br>Score:%{text} <br>Model: %{Model_Names}')
fig.show()

请在下面找到 dataframe compareModels_aft_Cleansing 的附件图片。

【问题讨论】:

  • 拥有\see compareModels_aft_Cleansing 会有所帮助
  • 嗨@jayveesea,感谢您的回复,在问题中添加了Dataframe compareModels_aft_Cleansing
  • 感谢您的信息!请参阅下面的回复,在示例中我展示了如何提供数据。对于那些试图帮助它以该格式从一开始就可用的人来说更方便(图片有帮助,但原始文本更有帮助);)

标签: python hover plotly tooltip plotly-python


【解决方案1】:

要实现所需的悬停文本,您可以使用以下内容:

fig.update_traces(hovertemplate = '%{label}: <br>Score:%{text} <br>Model: %{data.name}<extra></extra>')

需要注意的几点:

  1. %{data.name}是js后端省略的事件数据,更多信息here

  2. 图例名称已显示在辅助框中,删除使用 &lt;extra&gt;&lt;/extra&gt;,如 here 所述。

标签&lt;extra&gt;中包含的任何内容都显示在辅助框中, 例如&lt;extra&gt;{fullData.name}&lt;/extra&gt;。隐藏次要 完全框,使用空标签&lt;extra&gt;&lt;/extra&gt;

完整示例:

import pandas as pd

data = {'Base_Models': ['SVM'], 
        'Base_Models_Scores': [.625], 
        'Scaling & feature selection_scores': [.75], 
        'Standard_scaled_scores': [.8], 
        'Min_Max_scaled_scores': [.95]}

compareModels_aft_Cleansing = pd.DataFrame.from_dict(data)

import plotly.express as px

fig = px.bar(compareModels_aft_Cleansing, x="Base_Models", y=["Base_Models_Scores", 
                                                     "Standard_scaled_scores", "Min_Max_scaled_scores", 
                                                     "Scaling & feature selection_scores"],
              title="Training Scores", barmode='group', text = 'value',
            hover_name="Base_Models",
            hover_data={'Base_Models':False}, # remove species from hover data                     
                            )

Model_Names = ['Base_Models_Scores', 'Standard_scaled_scores', 'Min_Max_scaled_scores']
fig.update_traces(hovertemplate = '%{label}: <br>Score:%{text} <br>Model: %{data.name}<extra></extra>')
fig.show()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-12
    相关资源
    最近更新 更多