python - 在 Python 的 matplotlib 图表中打印数据的数量、平均值和标准差
问题描述
我喜欢在 matplotlib 图表中使用“缩放”按钮。每当我更改 ZOOM 时,我想打印图表中数据的数据数量、平均值和标准偏差。 它可以在控制台或图表中。如果我可以在任何地方看到图表中的一些数据统计信息,那就太好了。你能给我建议吗?
解决方案
我想我的问题并不清楚。无论如何,我通过在 matplotlib discourse 中提出问题自己找到了解决方案!
我意识到 matplotlib 的概念比我想象的要广泛得多。以下解决方案不是该问题的正确答案,因为它仅在按下按钮时打印统计信息,而不是在更改 xlim 时打印。但我更喜欢这种方式,因为我只能在需要时打印统计数据。
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.widgets import Button
df = pd.DataFrame()
fig, ax = plt.subplots()
plt.subplots_adjust(bottom=0.2)
df['time'] = np.arange(0.0, 1.0, 0.001)
df['data'] = np.sin(2*np.pi*df['time'])
df.plot.scatter(x='time', y='data', s=1, ax=ax)
def print_stats(event):
start, end = ax.get_xlim()
cond1 = df['time'] > start
cond2 = df['time'] < end
df_tmp = df[cond1 & cond2]
print(df_tmp.describe())
b_loc_size = plt.axes([0.81, 0.05, 0.1, 0.075])
b = Button(b_loc_size, 'Stats', hovercolor='green')
b.on_clicked(print_stats)
plt.show()
推荐阅读
- android - android中的本地通知在设备重启时使用Alarmmanager
- python - Tensorflow 添加可见 gpu 设备:0
- azure - 权限不足,无法完成使用 az ad sp list 列出服务主体的操作
- docusignapi - 在 aws-amplify 应用程序中集成 docusign
- filter - 两个过滤行 Spotfire 之间的区别
- swift - 如何快速更新 messageCollectionView 单元格内的数据?
- python - Python3 TypeError:'value'必须是str或bytes的实例,而不是元组
- python - 如何根据熊猫中选定的列ID对列值求和
- python - 有谁知道如何修复 PsychoPy 刺激上出现的随机绿线?
- python - txt 文件到数组