matplotlib 3d-график комбинаций интервалов x и z - PullRequest
0 голосов
/ 10 февраля 2020

Я бы хотел построить такую ​​функцию: f (x, z) = x / z, где x = z = list(range(, 10) со всеми комбинациями x и z. Я попытался:

def f(X, Y):
    return X/Y

def data(r=10):
    X = [i/10 for i in range(0, r)]
    Y = X.copy()
    x, y = zip(*[[e, i] for e in Y for i in X])
    z = [f(x[i], y[i]) if y[i] else float('Nan') for i in range(len(x))]
    return x, y, z

, чтобы получить данные x, y и z. Могу ли я построить 3D-график с этими 3 списками сейчас? Я нашел только решения, работающие с numpy массивами ...

Спасибо за любую помощь!

1 Ответ

1 голос
/ 10 февраля 2020

Вы можете использовать trisurf со своими 1d списками

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt

# Your functions here

x, y, z = data(r=10)

fig = plt.figure()
ax = fig.gca(projection='3d')

ax.plot_trisurf(x, y, z)
plt.show()

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...