利用matplotlib底图定义部分地球同步投影

2024-09-30 03:23:02 发布

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

我很难用底图创建一个自定义的地球同步投影。我需要的不是一个完整的球体投影,而是一个完整圆盘的上三分之一(全宽,从上到下的三分之一)。我在这里找到了一个例子:

http://matplotlib.org/basemap/users/geos.html

解释如何使用llcrnrx、llcrnry、urcrnrx和urcrny关键字为光盘的右上象限进行投影。按照这个例子,我想我会得到这样的结果:

from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt

lon_0 = 9.5
fig = plt.figure()
m1 = Basemap(projection='geos',lon_0=lon_0,resolution=None)
m = Basemap(projection='geos',lon_0=lon_0,resolution='l',
            # lower left
            llcrnrx=0., llcrnry=0.,
            # calculate the upper right coordinates, full width
            # two 3rds of the height
            urcrnrx=m1.urcrnrx, urcrnry=m1.urcrnry-m1.urcrnry/3.)

m.drawcoastlines()
plt.show()

这给了我一个奇怪的情节。在这个例子中,我认为对于新的投影,左下角总是(0,0),那么您只需计算宽度和高度坐标(右上角)。显然情况并非如此。仅仅是简单的实验,我现在有了这个:

^{pr2}$

这给了我一个粗略的估计,我想要什么,但我不知道为什么这样做,角点真正代表什么。在

我希望你们明白。。。在


Tags: importmatplotlibplt例子投影lonbasemapprojection

热门问题