在地图上画countour线Python 2

2024-04-29 06:39:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在世界地图上画等高线,这些线代表特定经纬度的磁偏角。你知道吗

我现在的代码是这样的:

def frange(start, stop, step):
x = start
while x < stop:
        yield x
        x += step
 m = Basemap(width=12000000,height=8000000,
        resolution='l',projection='stere',\
        lat_ts=-10,lat_0=-10,lon_0=-70)
 m.drawcoastlines()
 m.fillcontinents(color='coral',lake_color='aqua')
 m.drawmapboundary(fill_color='aqua')
 delta=0.5
 x=[]
 y=[]
 for i in frange(-80,-29.5,delta):
    x.append(i)
for j in frange(-40,10.5,delta):
    y.append(i)
with open("magdecl.txt", "r") as ins:
z = []
for line in ins:
    z.append(float(line))
 CS = m.contour(x,y,z)
 plt.save("magdecl")
 plt.show()

但是这个代码返回这样的错误:

索引器错误:数组的索引太多

我在任何地方都找不到解决方案,等高线文档也帮不上忙。 请帮我修改代码。你知道吗

提前谢谢!你知道吗


Tags: 代码inforstepstartcolordeltastop