微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在一个图中将python中的曲面和箭袋图结合起来

如何解决如何在一个图中将python中的曲面和箭袋图结合起来

我有以下代码可以生成一个曲面图,其中一个曲面作为相对于网格 X、Y 的 z 坐标给出。

代码生成矢量场图,作为相对于相同坐标系 X、Y 的单独图形。

有没有办法将这两个数字合二为一?矢量场是在表面还是在表面图的底部

import numpy as np
import matplotlib.pyplot as plt
import grad_field
 # first create the plot of the elevation surface
fig,ax = plt.subplots(subplot_kw={"projection": "3d"})
LNG = np.linspace(lngmin,lngmax,samples1)
LAT = np.linspace(latmin,latmax,samples2)
X,Y = np.meshgrid(LNG,LAT)
ax.plot_surface(X,Y,elev_mat)
plt.show()
 
# Now create the vector field plot of the gradients
[gradx,grady] = grad_field.grad_field(elev_mat)
fig1,ax1 = plt.subplots()
ax1.set_title('Arrows scale with plot width,not view')
ax1.quiver(X,gradx,grady,units='xy',scale=2,color='red')
plt.show()

解决方法

您可以通过 plt.subplots(nrows=1,ncols=1) 在彼此相邻/下方创建多个图。查看 documentation 以获取示例。

如果您想在一个图中创建多个图,您可以通过 ax.twinx()ax.twiny() 共享 x 或 y 轴。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。