Найти - Пользователи
Полная версия: вопрос про numpy.array и list
Начало » Python для новичков » вопрос про numpy.array и list
1
Spectral
Вот кусок, который рисует трехмерную графику:

import pylab
from mpl_toolkits.mplot3d import Axes3D
import numpy

def makeData ():
x = numpy.arange (-10, 10, 0.1)
y = numpy.arange (-10, 10, 0.1)
xgrid, ygrid = numpy.meshgrid(x, y)

zgrid = numpy.sin (xgrid) * numpy.sin (ygrid) / (xgrid * ygrid)
return xgrid, ygrid, zgrid

x, y, z = makeData()

fig = pylab.figure()
axes = Axes3D(fig)

axes.plot_surface(x, y, z)

pylab.show()
Видно, что для генерации данных использован метод array библиотеки numpy:
x = numpy.arange (-10, 10, 0.1)
y = numpy.arange (-10, 10, 0.1)
C одной стороны, это очень удобно при генерации простых входных данных на график.
С другой стороны, возникает следующий вопрос.
Имеется три списка значений x,y,z. Как можно трансформировать списки в объект numpy-list, чтобы можно было передать их в axes.plot_surface(x, y, z) и строить пользовательские x,y,z на трехмерном графике в таком случае?
Попытка подать сами списки на график вызывает ошибку
rows, cols = Z.shape
AttributeError: 'list' object has no attribute 'shape'
asv13
Spectral
Имеется три списка значений x,y,z. Как можно трансформировать списки в объект numpy-list, чтобы можно было передать их в axes.plot_surface(x, y, z) и строить пользовательские x,y,z на трехмерном графике в таком случае?
в объект array нужно приводить -
x = numpy.array(x_list)
Spectral
Спасибо! То, что надо…
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