python 画漫画_在漫画中画一条直线,罗宾逊投影
transform參數與要打印的數據相關聯。在lat/lon中指定直線的起點和終點,因此唯一合理的變換是大地坐標變換和PlateCarree變換。在
當您設置transform=ccrs.Robinson()Cartopy假設您提供的坐標已經在Robinson投影中,而不是在Robinson投影中。本地坐標系中的Robinson投影范圍與地理坐標系相比非常大(可能是1e7階),因此您選擇的兩個點都非常接近投影的中心,這就是為什么您只看到一個點。在
如果你想在羅賓遜投影上畫直線,你就必須用投影坐標來繪制它。這是直接使用Cartopy的變換系統,如下面修改的例子。有關Cartopy的變換/投影關鍵字如何工作的更多指導,請參見https://scitools.org.uk/cartopy/docs/v0.16/tutorials/understanding_transform.html。在import cartopy.crs as ccrs
import matplotlib.pyplot as plt
ax = plt.axes(projection=ccrs.Robinson())
ax.coastlines()
ax.stock_img()
ad_lat, ad_lon = -34.93, 138.60
liv_lat, liv_lon = 53.41, -2.99
# New bit: transform the given lat/lon points into the Robinson projection
geodetic = ccrs.Geodetic()
robinson = ccrs.Robinson()
ad_lon_t, ad_lat_t = robinson.transform_point(ad_lon, ad_lat, geodetic)
liv_lon_t, liv_lat_t = robinson.transform_point(liv_lon, liv_lat, geodetic)
plt.plot([ad_lon_t, liv_lon_t], [ad_lat_t, liv_lat_t],
color='blue', linewidth=1, marker='o', markersize=3,
# Be explicit about which transform you want:
transform=robinson)
plt.show()
總結
以上是生活随笔為你收集整理的python 画漫画_在漫画中画一条直线,罗宾逊投影的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python快速入门课堂笔记_Pytho
- 下一篇: 蜜糖水的功效与作用、禁忌和食用方法