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

python中的曲面图和箭袋图不起作用

如何解决python中的曲面图和箭袋图不起作用

我有以下代码应该创建两个图,一个曲面图和一个箭袋图。但是,这由于某种原因不起作用。我什么也没看到。绘图程序位于文件的最后。我做错了什么?

import numpy as np
import elev_multi_call
import matplotlib.pyplot as plt
from matplotlib import cm
from matplotlib.ticker import LinearLocator
import grad_field

def call_google_API(latmin,latmax,samples1,lngmin,lngmax,samples2):
    elev_mat=[]
    if samples1 <= samples2: # output is array with first lat in first column
        i = 0
        while i<samples1: 
            i = i+1
            w = latmin + i*(latmax-latmin)/samples1 
            if i == 1:
                elev_mat=(elev_multi_call.elev_multi_call(w,w,samples2));
         
            else:
                elev_mat = np.c_[elev_mat,elev_multi_call.elev_multi_call(w,samples2)]                 
    else :
        i=0
        while i<samples2:
            i = i+1
            w = lngmin + i*(lngmax-lngmin)/samples2 
            if i == 1:
                elev_mat = elev_multi_call.elev_multi_call(latmin,samples1)
            else:
                elev_mat = np.c_[elev_mat,samples1)]
                elev_mat = np.transpose(elev_mat) 
    

    fig,ax = plt.subplots(subplot_kw={"projection": "3d"})
    LNG = np.linspace(lngmin,samples1)
    LAT = np.linspace(latmin,samples2)
    X,Y = np.meshgrid(LNG,LAT)
    ax.plot_surface(X,Y,elev_mat)

    [gradx,grady] = grad_field.grad_field(elev_mat)
    fig1,ax1 = plt.subplots()
    ax1.set_title('Arrows scale with plot width,not view')
    Q = ax1.quiver(X,gradx,grady,units='width')
    plt.show()
    return elev_mat

如果您有任何问题,请告诉我。

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