【问题标题】:Show extra columns when hovering in a scatter plot with hvplot使用 hvplot 在散点图中悬停时显示额外的列
【发布时间】:2020-04-27 22:23:06
【问题描述】:

我正在尝试向散点图中的点添加标签或悬停列,但无济于事。

用作示例数据:

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 被添加到悬停字段。

是否有一个选项可以将列添加到我的悬停中而不添加图例和更改颜色?

【问题讨论】:

    标签: python hvplot holoviz


    【解决方案1】:

    您可以使用关键字 hover_cols 为悬停添加其他列。

    文档:https://hvplot.holoviz.org/user_guide/Customization.html

    hover_cols (default=[]): list 或 str
    要添加到悬停工具或“全部”的附加列,它将包括所有列(如果 use_index 为 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)
    

    【讨论】:

    • 太棒了,正是我想要的。在可用性方面,hvplot 是 matplotlib 向前迈出的一大步。
    • 不能再同意了,它很好,快速,简单,最重要的是:交互式:)
    • 如果其中一列不是数字,hover_cols='all' 崩溃
    猜你喜欢
    • 1970-01-01
    • 2023-03-12
    • 2021-10-04
    • 2013-08-11
    • 1970-01-01
    • 2012-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多