首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用mplcursors.cursor().connect()显示条名

使用mplcursors.cursor().connect()显示条名
EN

Stack Overflow用户
提问于 2021-09-22 14:01:01
回答 1查看 223关注 0票数 0

这是我的数据框架

代码语言:javascript
复制
df = pd.DataFrame((['Sep-2015',  'Adam',3,10 ],         
['Sep-2015',  'David',3,9],
['Sep-2015',  'Adam',4,8],                   
['Sep-2015',  'Adam' ,3,7],         
['Sep-2015',  'David',6,6],         
['Sep-2015' , 'Hardik',1,5],        
['Sep-2015' , 'David' ,3,4],['Aug-2015' , 'David' ,3,4],['Aug-2015' , 'Ada' ,3,4]),columns=
['Date','Name','Count','alarm'])

使用这个数据帧绘制了一个堆叠条形图

代码语言:javascript
复制
df.sort_values('Date')
df = df.drop_duplicates(['Date', 'Name'], keep='last')
df2 = pd.DataFrame()
df2['Date'] = df['Date']
df2['Name'] = df['Name']
df2['Count'] = df['alarm']
df2
#pivot table
df2 = pd.pivot_table(data = df, values = 'alarm', columns = 'Name', index = 'Date').reset_index()
df2 = df2.set_index('Date')
plot = df2.plot(kind = 'bar',stacked = True,figsize=(15, 5))

我得到了如下输出

这里的

,我试着在单击一个条形图时显示条名。我试过了

代码语言:javascript
复制
mplcursors.cursor(plot).connect(
                    "add", lambda sel: sel.annotation.set_text(['Ada','Adam','David','Hardik'][sel.target.index]))

,但当我尝试这样做时,它只显示所有条形图的第一个元素(Ada)。如何显示条名?

EN

回答 1

Stack Overflow用户

发布于 2021-09-23 09:01:11

这样做是可行的:

代码语言:javascript
复制
mplcursors.cursor(plot).connect("add", 
                                lambda sel: sel.annotation.set_text(sel.artist.get_label()))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69285799

复制
相关文章

相似问题

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