Почему отрицательная сторона не будет нанесена на карту

#python #matplotlib

#питон #matplotlib

Вопрос:

Я учусь строить 3d-графики, но понятия не имею, почему он не рисует график с отрицательной стороны. По сути, я пытаюсь построить график y=x^z, чтобы увидеть, как меняется y=x при изменении степени x от 0 доgt;2. Ниже приведен мой код.

 import numpy as np import matplotlib.pyplot as plt fig = plt.figure() ax = plt.axes(projection="3d") def y_function(x, z):  return x**z  x = np.linspace(-1, 1, 30) z = np.linspace(0, 2, 30)  X, Z = np.meshgrid(x, z) Y = y_function(X, Z)  fig = plt.figure() ax = plt.axes(projection="3d") ax.plot_wireframe(X, Y, Z, color='green') ax.set_xlabel('x') ax.set_ylabel('y') ax.set_zlabel('z')  plt.show()  ax = plt.axes(projection='3d') ax.plot_surface(X, Y, Z, rstride=1, cstride=1,  cmap='winter', edgecolor='none') ax.set_title('surface');  

Комментарии:

1. Ваша проблема связана с тем фактом, что отрицательные значения, возрастающие с дробной степенью, возвращают комплексные числа.