如何为Plotly双CSV文件可视化补充缺失的悬停图例信息
解决Plotly图表第二个数据集悬停无信息的问题
问题出在你通过fig.add_scatter()添加第二个数据集时,未指定名称和悬停数据模板,导致悬停时无法识别该数据集的信息。以下是修正后的代码:
import pandas as pd import plotly.express as px import plotly.graph_objects as go # 读取数据 df = pd.read_csv('/file1.csv') df2 = pd.read_csv('file2.csv') # 创建第一个折线图 fig = px.line(df, x='data', y='cena', title='bitek', labels={'data': '日期', 'cena': '价格'}) # 添加第二个散点图,指定名称和悬停模板 fig.add_scatter( x=df2['data'], y=df2['prediction'], name='预测值', # 给数据集命名,图例和悬停时会显示该名称 mode='markers', # 单独设置该轨迹的显示模式 hovertemplate='日期: %{x}<br>预测值: %{y}<extra></extra>' # 自定义悬停内容,<extra>用于隐藏默认重复的轨迹名称 ) # 若需要第一个折线图同时显示标记,单独设置其模式 fig.data[0].update(mode='markers+lines') fig.show()
关键修改点说明:
- name参数:为第二个数据集命名,既会在图例中展示,也会关联到悬停信息中。
- hovertemplate:自定义悬停时的展示内容,
%{x}和%{y}分别对应x轴和y轴数据,<extra></extra>可避免默认的轨迹名称重复显示,让悬停信息更简洁。 - 单独设置mode:避免
fig.update_traces()同时修改两个数据集的显示模式,按需单独配置每个轨迹的展示样式。
内容的提问来源于stack exchange,提问作者lukaszwaszczuk
相关产品推荐
相关产品推荐

