Python &引用;未定义的逆测地线;使用matplotlib打印线时

Python &引用;未定义的逆测地线;使用matplotlib打印线时,python,matplotlib,charts,inverse,valueerror,Python,Matplotlib,Charts,Inverse,Valueerror,这是我现在使用的示例代码: 当我使用样本坐标时,它工作得很好,它绘制了一条橙色的线,如示例中所示 但是,当我输入自己的坐标而不是样本坐标时,会产生ValueError 这就是我的代码的外观: m=Basemap() m.drawmapboundary(fill_color='#A6CAE0', linewidth=0) m.fillcontinents(color='grey', alpha=0.7, lake_color='grey') m.drawcoastlines(linewidth=

这是我现在使用的示例代码:

当我使用样本坐标时,它工作得很好,它绘制了一条橙色的线,如示例中所示

但是,当我输入自己的坐标而不是样本坐标时,会产生ValueError

这就是我的代码的外观:

m=Basemap()

m.drawmapboundary(fill_color='#A6CAE0', linewidth=0)
m.fillcontinents(color='grey', alpha=0.7, lake_color='grey')
m.drawcoastlines(linewidth=0.1, color="white")

# Add a connection between new york and London
startlat = 40.78; startlon = -73.98
arrlat = 51.53; arrlon = 0.08

m.drawgreatcircle(59.33, 18.07, 35.3, 149.1, linewidth=2, color='orange')
这是它产生的全部错误:

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-19-b3f6087641a6> in <module>()
     14 print(end)
     15 m.drawgreatcircle(startlon,startlat,arrlon,arrlat, linewidth=4, color='orange')
---> 16 m.drawgreatcircle(59.33, 18.07, 35.3, 149.1, linewidth=2, color='orange')

~\AppData\Local\conda\conda\envs\LocalEnv\lib\site-packages\mpl_toolkits\basemap\__init__.py in drawgreatcircle(self, lon1, lat1, lon2, lat2, del_s, **kwargs)
   2875         # use great circle formula for a perfect sphere.
   2876         gc = pyproj.Geod(a=self.rmajor,b=self.rminor)
-> 2877         az12,az21,dist = gc.inv(lon1,lat1,lon2,lat2)
   2878         npoints = int((dist+0.5*1000.*del_s)/(1000.*del_s))
   2879         lonlats = gc.npts(lon1,lat1,lon2,lat2,npoints)

~\AppData\Local\conda\conda\envs\LocalEnv\lib\site-packages\pyproj\__init__.py in inv(self, lons1, lats1, lons2, lats2, radians)
    826         inz, zisfloat, zislist, zistuple = _copytobuffer(lons2)
    827         ind, disfloat, dislist, distuple = _copytobuffer(lats2)
--> 828         _proj.Geod._inv(self,inx,iny,inz,ind,radians=radians)
    829         # if inputs were lists, tuples or floats, convert back.
    830         outx = _convertback(xisfloat,xislist,xistuple,inx)

_proj.pyx in _proj.Geod._inv (_proj.c:5471)()

ValueError: undefined inverse geodesic (may be an antipodal point)
---------------------------------------------------------------------------
ValueError回溯(最近一次调用上次)
在()
14印行(完)
15 m.拉深大圆(斯达顿、斯达顿、阿隆、阿拉特,线宽=4,颜色为橙色)
--->16米深的大圆圈(59.33,18.07,35.3,149.1,线宽=2,颜色为橙色)
drawgreatcircle中的~\AppData\Local\conda\conda\envs\LocalEnv\lib\site packages\mpl\u工具包\basemap\\uuuuu init\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
2875#对完美球体使用大圆公式。
2876 gc=pyproj.Geod(a=self.rmajor,b=self.rminor)
->2877 az12,az21,dist=gc.inv(lon1,lat1,lon2,lat2)
2878个点=整数((距离+0.5*1000.*del_s)/(1000.*del_s))
2879 lonlats=gc.npts(lon1、lat1、lon2、lat2、npoints)
inv中的~\AppData\Local\conda\conda\envs\LocalEnv\lib\site packages\pyproj\\uuuu init\uuuuuu.py(self、lons1、lats1、lons2、lats2、radians)
826 inz,zisfloat,zislist,zistuple=-复制缓冲区(lons2)
827 ind,disfloat,dislist,distuple=\u copytobuffer(lats2)
-->828-项目大地测量-项目投资(自身、inx、iny、inz、ind、弧度=弧度)
829#如果输入是列表、元组或浮点数,请转换回。
830 outx=_convertback(xisfloat、xislist、xistuple、inx)
_项目地理位置中的项目pyx(项目c:5471)()
ValueError:未定义的反测地线(可能是一个反节点)
有人知道问题出在哪里吗


提前感谢

函数用法:
drawgreatcircle(lon1,lat1,lon2,lat2)
。你的lat2=149.1是无效的。你的回答让我想到了我是如何提供输入的,在函数中,我得到的坐标返回为lat/lon,这导致了错误。谢谢你的帮助!