python - 更新多图 matplotlib
问题描述
我在更新 matplotlib 图表时遇到问题。问题是我有很多曲线,更新后它们的数量可能会改变。在示例代码中,我有 2 组数据,第 1 组有 90 条曲线,第 2 组有 80 条曲线,我希望我可以在同一个 matplotlib 窗口中绘制第 1 组和第 2 组。
import matplotlib.pyplot as plt
from matplotlib.transforms import Bbox
import numpy as np
from numpy.lib.polynomial import RankWarning
import pandas as pd
import sys
fig, ax = plt.subplots()
fig.subplots_adjust(right=0.78)
_x = []
_y = []
_y1 = []
_x1 = []
for x in range(90):
_x.append(np.linspace(0, 10*np.pi, 100))
_y.append(np.sin(_x[x])+x)
for x in range(80):
_x1.append(np.linspace(0, 10*np.pi, 150))
_y1.append(np.tan(_x1[x]+x))
def narysuj(__x, __y):
p = [] # p-pomiar
f = [] # f-czestotliwosc
for x in range(len(__x)):
p.append([])
f.append([])
ax.set_prop_cycle(color=plt.cm.gist_rainbow(np.linspace(0, 1, len(__x))))
for x in range(len(__x)):
for line in range(len(__x[x])):
#print(len(_y[x]), line)
p[x].append(__y[x][line])
f[x].append(__x[x][line])
ax.plot(f[x], p[x], label=f"Label {x}")
plt.show()
narysuj(_x, _y)
narysuj(_x1, _y1)
PS我知道我绘制这些图表的方式非常无效。
解决方案
我发现了问题所在。我必须在程序开始时添加 plt.ion() 并在绘图之前添加 ax.clear() 。
推荐阅读
- bootstrap-4 - html:如何创建切换开关。我正在使用 bootstrap4
- python - 下载文件时Apache气流ssh_hook随机断开连接
- reactjs - ReactJS:需要帮助调试
- xampp - Mysql 服务器在 XAMPP 上关闭,日志显示我没有错误
- deep-learning - 在 Intel GPU 上部署 YOLO
- spring-data-jpa - Spring Data JPA 根据字符串输入列表选择不同的动态列
- javascript - 使用 navigator.geolocation.watchPosition 时 React 中的无限循环
- reactjs - 等待 useEffect 更新状态以传递道具?
- python-3.x - 如何根据用户输入菜单计算我的购物车到我的字典列表的总和?
- html - 如何在不移动 flexbox 的情况下控制过渡?