将文本文件坐标更改为英国网格坐标

时间:2019-03-17 09:13:10

标签: python grid coordinates

我有一个纬度/经度的文本文件,我想将其转换为英国地图网格的基本坐标。

在文本文件中,每一行都是这样的:

51.505046,-0.12687

51.505046,-0.12687

51.508369,-0.120969

51.508369,-0.120969

51.508369,-0.120969

51.508646,-0.195893

51.508646,-0.195893

51.507841,-0.127332

51.507841,-0.127332

,我想将这些值更改为:

530100,180120

530100,180120

530500,180500

530500,180500

530500,180500

525300,180400

525300,180400

530060,180430

530060,180430

我写了下面的代码,但出现错误,无法转换坐标。你有什么主意吗?

  
    
      

从OSGridConverter导入latlong2grid

             

filepath ='C:/Users/Desktop/coo1.txt'

             

file = open(文件路径)

             

对于文件中的行:

             

... fields = line.split(“,”)

             

... field1 =字段[0]

             

... field2 =字段[1]

             

... g = latlong2grid(field1,field2)

             

... print(g,E,g.N)

    
  

错误:OSGridConverter.base.OSGridError:OSGridConverter错误:无法解析参数51.505046

我可以通过以下方式分别转换每行:

  
    
      

g = latlong2grid(52.657977,1.716038)

             

(g.E,g.N)

    
  

但不是整个文本。

1 个答案:

答案 0 :(得分:0)

我认为问题在于您正在向函数传递字符串,将其转换为float:

g=latlong2grid (float(field1), float(field2))