使用Matplotlib获取网格点

3

我有印度地图的坐标。x轴范围为65至100,y轴范围为0-100。我已在此范围内生成了网格。我想获取网格绘图的坐标。如何获取?

 #!usr/bin/env python
 import matplotlib.pyplot as plt
 import numpy as np
 f = np.loadtxt('New_Coordinate.txt')
 fig = plt.figure()
 ax = fig.gca()
 ax.set_xticks(np.arange(65,100,1))
 ax.set_yticks(np.arange(0,100,1))
 plt.plot(f[:,:1],f[:,1:],'ro')
 plt.grid()
 plt.show()

请问您需要什么?您需要一个包含网格线交点(x,y)坐标的列表吗? - gboffi
在单个轴上使用100个刻度线(甚至65个)太多了...请考虑您可以具有主要和次要刻度线,后者可能没有标签,从而避免在绘图中出现大量混乱。有关示例,请参见http://matplotlib.org/examples/pylab_examples/major_minor_demo1.html 和/或 https://dev59.com/ymox5IYBdhLWcg3wkk-E - gboffi
1个回答

2
网格点是在两个轴的刻度位置创建的。
然后,您可以使用 itertools.product 来获取所有这些点对,这些点对就是网格线相交的位置。
import itertools

xticks = ax.get_xticks()
yticks = ax.get_yticks()

gridpoints = list( itertools.product(xticks, yticks) )

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接