我处理地理信息并使用以下方式呈现结果
matplotlib。所有输入都是纬度/经度 [度]。我转换成
x/y [米] 用于我的计算。我在中展示了我的结果
纬度/经度。问题是获得图形的纵横比
右:所有图表都太宽。是否有标准程序来设置
正确的纵横比,这样我就可以简单地绘制散点图和其他图表
使用纬度/经度结果的形状正确吗?在屏幕上和在
纸(png)?
[这部分稍后添加]
这是我的问题的一个简单的剥离版本。我需要实际的纬度/经度值
围绕轴和精确的形状(正方形)。现在它看起来很宽(2x)。
import math
import matplotlib.pyplot as plt
import numpy as np
from pylab import *
w=1/math.cos(math.radians(60.0))
plt_area=[0,w,59.5,60.5] #60deg North, adjacent to the prime meridian
a=np.zeros(shape=(300,300))
matshow(a, extent=plt_area)
plt.grid(False)
plt.axis(plt_area)
fig = plt.gcf()
fig.set_size_inches(8,8)
fig.subplots_adjust(left=0.1, right=0.9, bottom=0.1, top=0.9)
plt.show()
看来我找到了解决方案。
我在这里找到了它:如何在matplotlib中设置纵横比? https://stackoverflow.com/questions/7965743/python-matplotlib-setting-aspect-ratio
import math
import matplotlib.pyplot as plt
import numpy as np
w=1/math.cos(math.radians(60.0))
plt_area=[0,w,59.5,60.5] #square area
a=np.zeros(shape=(300,300))
fig = plt.figure()
ax = fig.add_subplot(111)
ax.imshow(a)
plt.grid(False)
ax.axis(plt_area)
fig = plt.gcf()
fig.set_size_inches(8,8)
ax.set_aspect(w)
fig.subplots_adjust(left=0.1, right=0.9, bottom=0.1, top=0.9)
plt.show()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)