繁体   English   中英

3D Plot 表面带自定义数据

[英]3D Plot Surface With Custom Data

样例数据如下:

import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d as Axes3D
from matplotlib import cm
import numpy as np

x = np.linspace(1,4,10)
y = np.linspace(3,4,10)
z = np.linspace(10,20,7)
data = np.random.rand(10,7)

和自定义 plot 像这样:

xx = np.ones((10,7))
yy = np.ones((10,7))
zz = np.ones((10,7))
for i in range(7):
    xx[:,i] = x
    yy[:,i] = y
for i in range(10):
    zz[i,:] = z

和这样的线框:

在此处输入图像描述

当我尝试这个来获得表面颜色时:

ax = plt.figure().add_subplot(111,projection = '3d')
ax.plot_surface(xx,yy,zz,facecolor = cm.coolwarm(data))
plt.show()

像这样的错误:

ValueError:RGBA 序列的长度应为 3 或 4

我不明白为什么这是失败的。 我需要这个自定义 plot 来替换 Meshgrid(真的需要这个 plot 作为我的输出)。 任何人都可以解决这个问题吗?

ax.plot_surface (xx, yy, zz, cmap = cm.coolwarm)这不会产生错误。 但是你想要得到的最终结果是什么? 根据变量的值在colors中绘制的表面?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM