3 回答

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超5個(gè)贊
我不知道如何實(shí)現(xiàn)這一點(diǎn),但也許可以解釋一下為什么會(huì)發(fā)生這種情況。 plot_surface
生成一個(gè)網(wǎng)格,其中頂點(diǎn)由x
和y
和定義z
。每個(gè)面片都有 4 個(gè)角,并獲得與其 z 值相對(duì)應(yīng)的顏色。查看該圖,它可能是 4 個(gè)角的最大 z 值(只是猜測(cè))。如果您仔細(xì)觀察,當(dāng)您向 +y 方向移動(dòng)時(shí),色塊的顏色實(shí)際上會(huì)變淺。但更明顯的是x
方向上的顏色變化,產(chǎn)生了你提到的斜坡。
但如果每個(gè)補(bǔ)丁只有單一顏色,這就無法避免。
如果將公式更改為,您可能會(huì)更清楚地看到這一點(diǎn)Z = (X**-1 + 10 * Y)

TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊
曲面圖的行為不是您所期望的。只有contour3D 或contourf3D 可以顯示此類行為。這是相關(guān)代碼,您可以嘗試獲取以下情節(jié):
surf = ax.plot_surface(Xtest, Ytest, Ztest, cmap=cm.plasma, alpha=0.55) ax.contourf3D(Xtest, Ytest, Ztest, cmap=cm.plasma)
顯示曲面和輪廓的圖:

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超8個(gè)贊
我想,繪制這種曲面的正式答案是使用Axes3D.contour
和Axes3D.contourf
。例如:
surf2?=?ax.contourf(Xtest,?Ytest,?Ztest,?250,?cmap=cm.plasma, ????????????????????alpha=0.6,?antialiased=False) surf?=?ax.contour(Xtest,?Ytest,?Ztest,?250,?cmap=cm.plasma, ??????????????????alpha=0.6,?antialiased=False)
顏色圖顯示正確的 z 比例。它不像光滑表面那么完美,因?yàn)檫@取決于我們縮放多少或放置輪廓多少。我不知道是否有辦法通過plot_surface創(chuàng)建它。
添加回答
舉報(bào)