У меня возникли проблемы с тем, чтобы линия, соединяющая точки на моем графике, была гладкой. Это кажется более сложным, потому что я запускаю анимированный график, все примеры, которые я видел онлайн, предназначены для статических графиков. Я попытался выполнить этот пример интерполяции, но я не могу заставить его работать. Любые матроплали-гуру? Вот код для графика.matplotlib, make smooth graph line
import psutil
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
import matplotlib.animation as animation
from collections import deque
fig = plt.figure()
ax = plt.axes(xlim=(0, 200), ylim=(0, 100))
line, = ax.plot([],[])
y_list = deque([-1]*200)
x_list = deque(np.arange(200,0,-1))
def init():
line.set_data([],[])
return line,
def animate(i):
y_list.pop()
y_list.appendleft(psutil.cpu_percent(None,False))
line.set_data(x_list,y_list)
return line,
anim = animation.FuncAnimation(fig, animate, init_func=init,
frames=200, interval=100, blit=True)
plt.show()
Возможный дубликат [Медленный и плавный рисунок линий питон Matplotlib] (http://stackoverflow.com/questions/27385619/slow-and-smooth-drawing-lines-python-matplotlib) –
@MikeJSChoi Не дубликат. В этом вопросе «гладкий» относится к сглаживанию строки на экране, тогда как в связанном вопросе «плавный» относится к переходу в анимации. – ImportanceOfBeingErnest
@HexxNine Что такое «этот пример интерполяции»? Вы можете ссылаться на него? Вам также нужно будет сказать, что именно вы подразумеваете под гладкой линией? Прямая линия, показывающая среднюю или изогнутую линию? Насколько далеко не подходят другие примеры интерполяции? Где именно проблема? – ImportanceOfBeingErnest