簡體   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