首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何制作matplotlib来绘制3D三面图?

如何制作matplotlib来绘制3D三面图?
EN

Stack Overflow用户
提问于 2014-11-12 04:21:11
回答 2查看 1.6K关注 0票数 0

如何用matplotlib制作一个具有不同平面的3D图表类型COMSOL (如2D中的tricontourf )?

example chart COMSOL

EN

回答 2

Stack Overflow用户

发布于 2014-11-13 02:42:55

很抱歉在评论中添加链接并在稍后删除它们这是我的第一个问题…

这是我用来绘制2d的代码。我有一个有4列的矩阵:

代码语言:javascript
复制
fig, ax = plt.subplots(1); fig.set_figwidth(17); fig.set_figheight(7);

    x = a[:, 0]; 
    y = a[:, 1]; 
    t = a[:, 3];

    fig_1 = ax.tricontourf(x, y, t); 
    ax.tricontour(x, y, t, colors = 'k'); ax.scatter(x, y)
    ax.set_xlabel("Eje y [mm]", fontsize = 20); ax.set_ylabel("Eje x [mm]", fontsize = 

plt.show()

但是当我尝试在3d模式下做计划时,它不起作用,颜色层是分开的:

代码语言:javascript
复制
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
from matplotlib import cm

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

cset = ax.tricontourf(x, y, t, zdir= 'z', cmap=cm.coolwarm)
fig.colorbar(cset)

plt.show()
票数 0
EN

Stack Overflow用户

发布于 2016-07-13 23:59:39

我也有同样的问题。只需将偏移量设置为某个z值。

代码语言:javascript
复制
cset = ax.tricontourf(x, y,t,  zdir= 'z', cmap=cm.coolwarm,offset=1.0)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26873811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档