Я хочу создать поверхностный график списков, показанных в коде. Это упрощение данных, которые я буду импортировать из файла Excel, как только разберусь, как их построить.
x и y должны представлять плоскость, из которой возникают значения z. Я создал случайную матрицу для сопряжения со значениями 3x10 из x, y.
Это сообщение об ошибке:
ValueError: несоответствие формы: объекты не могут быть переданы одной фигуре
import matplotlib.pyplot as plt
import numpy as np
x = [0,1,2,3,4,5,6,7,8,9,10] #creating random data
y = [0,1,2,3]
a = np.random.rand (3, 10)
z = np.array(a, ndmin=2) #not really sure if this piece is necessary.
fig = plt.figure()
ax = fig.add_subplot(1,1,1, projection='3d')
x, y = np.meshgrid(x, y)
ax.plot_surface(x, y, z)
plt.show()
ValueError: несоответствие формы: объекты не могут быть переданы одной фигуре
Я уже пытался пропустить z = np.array(a, ndmin=2)
. Не сработало.