【问题标题】:Change Matplotlib's Coordinate更改 Matplotlib 的坐标
【发布时间】:2017-07-22 11:40:21
【问题描述】:

matplotlib 有自己的局部坐标。 但是,我想将其更改为我自己的经纬度数据。数据有它的最大和最小纬度和经度作为一个列表,所以唯一需要做的就是替换x和y轴的范围。 我可以这样做吗?

{'minLat': 109.0, 'maxLat': 177.7, 'maxLong': 177.64, 'minLong': 131.8}

这是需要替换 x 和 y 坐标的 lat 和 lon。这个列表是通过我定义的函数生成的。

【问题讨论】:

  • 我不太确定你的问题。您想设置图表的轴,还是设置 xlim 和 ylim?

标签: python matplotlib coordinates


【解决方案1】:

使用set_xlim()set_ylim() 允许我们更改轴限制。

import matplotlib.pyplot as plt
coord = {'minLat': 109.0, 'maxLat': 177.7, 'maxLong': 177.64, 'minLong': 131.8}
fig, ax = plt.subplots()
ax.set_xlim((coord["minLong"], coord["maxLong"]))
ax.set_ylim((coord["minLat"], coord["maxLat"]))
ax.plot( some values )
plt.show()

【讨论】:

  • 我以前试过这个。但问题是轴确实显示了正确的东西,但是一旦点击某个点它返回的坐标仍然是原始的本地 matplotlib 坐标而不是我的纬度和经度坐标
  • 我刚刚验证过。我认为 ax.set_xlim 只是告诉 matplotlib 将绘图区域移动到另一个指定的位置。但问题是我需要我的图表仍然在图片的中心,但是该点的返回坐标需要与新的纬度和经度坐标相关。
  • 在 matplotlib 中绘图时,我们只关心数据坐标(所有其他坐标,如图形坐标可能与放置轴、图例等相关,但与绘图无关)。没有“本地坐标”之类的东西。我建议您提供问题的minimal reproducible example(不超过 10 行),然后我们会找到解决方案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-02
  • 1970-01-01
  • 2011-04-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多