python - matplotlib funcAnimation 带有静态刻度的增长线
问题描述
我在我的 python 脚本中使用 matplotlib,该脚本用于进行一些连接测试并将它们绘制在图表中。animate 函数从执行连接测试的其他函数获取其数据。
我希望图形 x 轴以 00:00、01:00 ... 23:00 的格式显示所有时间,并且动画功能会将每个点放在正确的时间点,但我还没有做到它以任何方式。在我附加的图像中,我用 plt.xticks([]) 设置了 x 轴刻度,但是随着线条的增长,轴只是向右滚动。代码示例不起作用!它唯一的动画功能我不想附加整个代码,因为它无关紧要。
animate 函数从首先执行测试的生成器获取 args,然后生成值,首先生成 google,然后生成 facebook,master_dict 是一个包含所有测试结果的字典,因此它从中获取绘图的值。graph_list 是包含绘图点的 2 个 2d numpy 数组的列表。x_val 是日期时间字符串,格式为 "%H:%M"%S",y_val 是测试的浮点值
def animate(args):
url = args[0]
master_dict = args[1]
plot_dict = master_dict[url]
url_id = 1 if 'google' in url else 0
x_val = plot_dict[TIME]
y_val = plot_dict[BYTE]
point = np.array([[x_val, y_val]])
graph_list[url_id] = np.append(graph_list[url_id], point, axis=0)
x, y = graph_list[url_id].T
y = y.astype(np.float)
plt.gcf().autofmt_xdate(rotation=60)
return plt.plot(x, y, color=('g' if url_id else 'r'), linewidth=2)
解决方案
推荐阅读
- elasticsearch - Elasticsearch GET / 返回 HTML 错误而不是 JSON 响应
- python-3.x - 根据更改的列条件在数据框中添加行
- ios - 如何在具有 3 位有效数字十进制值的 iOS 游戏中显示最佳时间?
- javascript - 通过 AJAX 在 JavaScript 中“手动”刷新页面
- php - 如何在 PHP 中将“流资源”返回类型添加到函数中
- php - 不存在的地方
- python - 使用 virtualenv / virtualenvwrapper 在特定目录中创建 virtualenv
- python - 如何移动存储在列表中的数组行
- python - 卡在 Python 中的嵌套 for 循环上
- awk - 使用 AWK 获取整个记录信息