使用 hvplot 在散点图中悬停时显示额外的列
Show extra columns when hovering in a scatter plot with hvplot
我正在尝试向散点图中的点添加标签或悬停列,但无济于事。
用作示例数据:
import pandas as pd
import holoviews as hv
import hvplot.pandas
df = pd.read_csv('http://assets.holoviews.org/macro.csv', '\t')
df.query("year == 1966").hvplot.scatter(x="gdp", y="unem")
结果如下图。如果我将鼠标悬停在这个项目上我看不到,哪个国家由点表示(这使得它相当无用)。我可以在散点图调用中使用附加关键字 color="country"
。这将导致额外的图例(可以关闭)和值 country: countryname 被添加到悬停字段。
是否有一个选项可以只将列添加到悬停状态而不添加图例和更改颜色?
您可以使用关键字 hover_cols 为您的悬停添加额外的列。
文档:https://hvplot.holoviz.org/user_guide/Customization.html
hover_cols (default=[]): list or str
Additional columns to add to the hover tool or 'all' which will includes all columns (including indexes if use_index is True).
因此,在您的示例中,如果您想 添加特定的列到您的悬停 :
# use keyword hover_cols to add additional columns when hovering
df.hvplot.scatter(x="gdp", y="unem", hover_cols=['country', 'year'])
或者,如果您想 将所有其他列包含到您的悬停中 :
df.hvplot.scatter(x="gdp", y="unem", hover_cols='all')
或者,如果您想 包括所有要悬停的列,但不包括索引 :
df.hvplot.scatter(x="gdp", y="unem", hover_cols='all', use_index=False)
我正在尝试向散点图中的点添加标签或悬停列,但无济于事。
用作示例数据:
import pandas as pd
import holoviews as hv
import hvplot.pandas
df = pd.read_csv('http://assets.holoviews.org/macro.csv', '\t')
df.query("year == 1966").hvplot.scatter(x="gdp", y="unem")
结果如下图。如果我将鼠标悬停在这个项目上我看不到,哪个国家由点表示(这使得它相当无用)。我可以在散点图调用中使用附加关键字 color="country"
。这将导致额外的图例(可以关闭)和值 country: countryname 被添加到悬停字段。
是否有一个选项可以只将列添加到悬停状态而不添加图例和更改颜色?
您可以使用关键字 hover_cols 为您的悬停添加额外的列。
文档:https://hvplot.holoviz.org/user_guide/Customization.html
hover_cols (default=[]): list or str
Additional columns to add to the hover tool or 'all' which will includes all columns (including indexes if use_index is True).
因此,在您的示例中,如果您想 添加特定的列到您的悬停 :
# use keyword hover_cols to add additional columns when hovering
df.hvplot.scatter(x="gdp", y="unem", hover_cols=['country', 'year'])
或者,如果您想 将所有其他列包含到您的悬停中 :
df.hvplot.scatter(x="gdp", y="unem", hover_cols='all')
或者,如果您想 包括所有要悬停的列,但不包括索引 :
df.hvplot.scatter(x="gdp", y="unem", hover_cols='all', use_index=False)