[英]How to plot a 3d surface from multiple 2d arrays and one 1d array?
我正在尝试 plot 以下数据,因此它看起来像所附图像:每个文本文件都是一个 2X40 矩阵。
xi,yi 线应根据 z 数组在 Z 方向偏移。 我想通过表面连接那些线
z = np.array([0.5, 1, 1.5, 2, 2.5, 3, 3.3, 3.5, 4, 4.5, 5])
x0, y0 = np.loadtxt('Conv_Vd(Vk)_Vg=0.5.txt', delimiter='\t', unpack=True)
x1, y1 = np.loadtxt('Conv_Vd(Vk)_Vg=1.txt', delimiter='\t', unpack=True)
x2, y2 = np.loadtxt('Conv_Vd(Vk)_Vg=1.5.txt', delimiter='\t', unpack=True)
x3, y3 = np.loadtxt('Conv_Vd(Vk)_Vg=2.txt', delimiter='\t', unpack=True)
x4, y4 = np.loadtxt('Conv_Vd(Vk)_Vg=2.5.txt', delimiter='\t', unpack=True)
x5, y5 = np.loadtxt('Conv_Vd(Vk)_Vg=3.txt', delimiter='\t', unpack=True)
x6, y6 = np.loadtxt('Conv_Vd(Vk)_Vg=3.3.txt', delimiter='\t', unpack=True)
x7, y7 = np.loadtxt('Conv_Vd(Vk)_Vg=3.5.txt', delimiter='\t', unpack=True)
x8, y8 = np.loadtxt('Conv_Vd(Vk)_Vg=4.txt', delimiter='\t', unpack=True)
x9, y9 = np.loadtxt('Conv_Vd(Vk)_Vg=4.5.txt', delimiter='\t', unpack=True)
x10, y10 = np.loadtxt('Conv_Vd(Vk)_Vg=5.txt', delimiter='\t', unpack=True)
您想要一个3D 线框 plot这意味着您需要将数据强制转换为 x、y、z 格式。 通常,“z”是因变量。 猜测您当前的数据结构,您有一堆 x,y 集合,其中 x 是独立的,y 是依赖的。 然后,您想添加一个新的“深度”维度,称为“z”。
您最终需要得到 3 个 1D arrays x,y,z。 您可以简单地连接现有的 x1,x2,x3..., y1,y2,y3... arrays,并创建一个最终大小相同的“z”数组,其中包含您指定的 z 值。 然后将其全部输入plot_wireframe
,记住您正在交换 y 和 z 约定。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.