首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Matplotlib悬停文本

Matplotlib悬停文本
EN

Stack Overflow用户
提问于 2020-04-02 16:56:20
回答 1查看 341关注 0票数 0

我使用Matplotlib和Squarify创建了这个tree map。当鼠标悬停在轴上时,有没有办法显示每个轴的信息?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-02 23:07:01

mplcursors库可用于在悬停时创建自定义注释。下面是一个包含树映射的示例:

代码语言:javascript
复制
import matplotlib.pyplot as plt
import matplotlib as mpl
import squarify
import mplcursors

sizes = [5, 20, 30, 25, 10, 12]
sumsizes = sum(sizes)
labels = ['A', 'B', 'C', 'D', 'E', 'F']

cmap = plt.cm.get_cmap('Greens')
norm = plt.Normalize(vmin=min(sizes), vmax=max(sizes))
colors = [cmap(norm(s)) for s in sizes]
squarify.plot(sizes=sizes, label=labels, color=colors)
plt.colorbar(plt.cm.ScalarMappable(cmap=cmap, norm=norm))

cursor = mplcursors.cursor(hover=True)
cursor.connect("add", lambda sel: sel.annotation.set_text(
    f"ID:{sel.target.index} '{labels[sel.target.index]}'\nSize:{sizes[sel.target.index]} ({sizes[sel.target.index] * 100.0 / sumsizes:.1f} %)"))

plt.show()

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60987714

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档