2015-04-07 45 views
0

我想用印度地图生成一个网格,使用matplotlib.I给出了一个包含印度地图大纲坐标的文件。我需要生成?在outline.How我能做到这里面格这是我的代码:以坐标形式生成给定大纲内的网格

#!usr/bin/env python 
import matplotlib.pyplot as plt 
import numpy as np 
import itertools 
f=open("New_Coordinate.txt",'r') 
l1=[] 
l2=[] 
for row in f: 
temp=row.split() 
x=float(temp[0]) 
y=float(temp[1]) 
l1.append(x) 
l2.append(y) 

f.close() 
f2 = np.loadtxt('New_Coordinate.txt') 
l1=np.array(l1) 
l2=np.array(l2) 
fig = plt.figure() 
ax = fig.gca() 
ax.set_xticks(l1) 
ax.set_yticks(l2) 
plt.plot(f2[:,:1],f2[:,1:],'ro') 
plt.grid() 
ax.set_xticklabels([]) 
ax.set_yticklabels([]) 
xticks = ax.get_xticks() 
yticks = ax.get_yticks() 
gridpoints = list(itertools.product(xticks, yticks)) 
f1=open("gridpoints.txt",'w') 
for i in gridpoints: 
    f1.write(str(i)) 
    f1.write('\n') 
plt.show() 
f1.close() 
+0

如果你可以添加一个SAMP le数据集(您的文本文件),这将有助于获得答案。 –

回答

0

我用这些坐标(印度程度)

68.116667 97.416667 
8.06667 37.1 

f2 = np.loadtxt('coordinates.txt') 
fig = plt.figure() 
ax=fig.gca() 
plt.plot(f2[:1, :], f2[1:,:], 'ro') 
plt.grid() 
plt.show() 

enter image description here