Найти - Пользователи
Полная версия: matplotlib и обновление Axes3D
Начало » Python для новичков » matplotlib и обновление Axes3D
1
d4nnt
Нужно: выводить на 3D оси поверхность и периодически ее обновлять(изменять пределы по X или Y).
Сейчас реализован только вывод поверхности.

from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
import matplotlib.pyplot as plt
import numpy as np
import random

fig = plt.figure()
ax = Axes3D(fig)
X = np.arange(-10, 10, 0.3)
Y = np.arange(-10, 10, 0.3)
X, Y = np.meshgrid(X, Y)
Z = np.sin(Y)+np.sin(X)/5+np.random.normal(0,1,(len(X),len(Y)))/10
ax.plot_surface(X, Y, Z, rstride=1, cstride=1,cmap=cm.bone)
plt.show()
Вопрос: Как ее обновлять, используя цикл?
Evgeny
У меня вот такой код работает


from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
import matplotlib.pyplot as plt
import numpy as np
import random

fig = plt.figure()
ax = Axes3D(fig)
fig.show()

X = np.arange(-10,10,0.3)
Y = np.arange(-10, 10, 0.3)
X, Y = np.meshgrid(X, Y)

for count in range(5):
Z = np.sin(Y+count)+np.sin(X+count)/5+np.random.normal(0,1,(len(X),len(Y)))/10
ax.clear()
ax.plot_surface(X, Y, Z, rstride=1, cstride=1,cmap=cm.jet)
plt.draw()

raw_input()
d4nnt
Спасибо за пример! Работает.

Теперь хочу увеличить скорость, если это возможно. Может быть можно удалять обьект на осях, а не очищать их.
Подскажите где почитать про работу с графиками.
Evgeny
Можно здесь поискать:
http://matplotlib.sourceforge.net/contents.html

Вот еще книга неплохая:
Matplotlib for Python Developers (2009)
AleksSR
Приветствую! Не поможете с с построением 3d поверхности по данным из текстового файла? Подробное описание здесь. Спасибо за помощь.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB