Форум сайта python.su
Нужно: выводить на 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()
Офлайн
У меня вот такой код работает
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()
Офлайн
Спасибо за пример! Работает.
Теперь хочу увеличить скорость, если это возможно. Может быть можно удалять обьект на осях, а не очищать их.
Подскажите где почитать про работу с графиками.
Офлайн
Можно здесь поискать:
http://matplotlib.sourceforge.net/contents.html
Вот еще книга неплохая:
Matplotlib for Python Developers (2009)
Офлайн
Приветствую! Не поможете с с построением 3d поверхности по данным из текстового файла? Подробное описание здесь. Спасибо за помощь.
Офлайн