我想在matplotlib条形图中添加下拉列表和2个文本框,以便根据下拉列表和文本框输入显示数据。 数据帧如下:
Year Sex Area Count
2015 W Dhaka 6
2015 M Dhaka 3
2015 W Khulna 1
2015 M Khulna 8
2014 M Dhaka 13
2014 W Dhaka 20
2014 M Khulna 9
2014 W Khulna 6
2013 W Dhaka 11
2013 M Dhaka 2
2013 W Khulna 8
2013 M Khulna 5
2012 M Dhaka 12
2012 W Dhaka 4
2012 W Khulna 7
2012 M Khulna 1
在下拉列表中,将有一个区域,用户可以选择一个区域。在这两个文本框中,用户将输入2年(如2013年和2015年)
在条形图中,在文本框中输入的年之间,将显示下拉列表中所选区域的出生总数 就像这张图:
我编写了一个具有固定年数和面积的代码,如下所示:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
df = pd.read_csv('stats.csv', delimiter=',', encoding="utf-8-sig")
df=df.loc[df['"Year"']<=2015]
df=df.loc[df['"Year"']>=2011]
df=df.loc[df['Area']=="Rathaus"]
agg_df = df.groupby(['"Year"','Sex']).sum()
agg_df.reset_index(inplace=True)
piv_df = agg_df.pivot(index='"Year"', columns='Sex', values='Count')
fig = plt.figure(1)
ax1 = fig.add_subplot(211)
piv_df.plot.bar(stacked=True,ax=ax1)
plt.show()
如何使用matplotlib中的一个下拉列表和两个文本框从用户输入来实现相同类型的图形?有什么好办法吗?
我不确定你是否可以使用Jupyter笔记本来为你的图形添加交互性,但这里有一个解决方案,我想出的,将做你想要的。
导入语句
加载样本数据
从现在开始,df被初始化
准备交互式绘图
实际调用交互图
相关问题 更多 >
编程相关推荐