我想在basemap
实例上绘制一条连接两个等纬度点的线,使用圆锥形地图投影(即纬度为不直线)。
无论我使用m.drawgreatcircle
还是m.plot
,结果行都是两点之间的直(-I think ......?)行,而不是到恒定纬度的一条线。有人知道如何解决这个问题吗?下面是一些示例代码和结果图像。我非常喜欢沿着55N线运行的黄色虚线。
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap
#set up the map
m = Basemap(resolution='l',area_thresh=1000.,projection='lcc',\
lat_1=50.,lat_2=60,lat_0=57.5,lon_0=-92.5,\
width=6000000,height=4500000)
#add some basic map features
m.drawmeridians(np.arange(-155,-5,10),\
labels=[0,0,0,1],fontsize=8,linewidth=0.5)
m.drawparallels(np.arange(30,85,5),\
labels=[1,0,0,0],fontsize=8,linewidth=0.5)
m.drawcoastlines(linewidth=0.5)
m.drawcountries(linewidth=1)
m.drawstates(linewidth=0.3)
#plot some topography data
m.etopo()
#draw a line between two points of the same latitude
m.drawgreatcircle(-120,55,-65,55,linewidth=1.5,\
color='yellow',linestyle='--')
道歉,如果我遗漏了一些非常简单的东西......!