我想知道Matplotlib Basemap工具包中以下文件数据文件的文件格式
>国家* .dat
> countriesmeta * .dat
> gshhs * .dat
>河流* .dat
> riversmeta * .dat
>州* .dat
> statesmeta * .dat
另外我想知道是否有可用的工具来操作这些文件.
解决方法:
我刚刚做了一些实验:
“gshhs_c.dat”是一个二进制文件,包含所有海岸的lon,lat点的长列表,作为单精度32b浮点数:
lon1,lat1,lon2,lat2,…,lonn,latn.
文件“gshhsmeta_c.dat”包含这些点的连接信息:
1, area, numpoints, limit_south, limit_north, startbyte, numbytes, id-(E/W crosses dateline east or west)
在我的情况下,第一个条目(欧亚大陆)是:
1 50654050.7558 1004 1.26950 77.71625 0 8032 0-E
我们可以阅读并绘制它:
import numpy as np
import matplotlib.pyplot as plt
binfile = open('gshhs_c.dat','rb')
data = np.fromfile(binfile,'<f4')
data = data.reshape(len(data)/2,2)
plt.plot(data[:1004,0],data[:1004,1])
plt.show()
其他文件应具有或多或少相同的格式,因为它们由同一函数读入.
编辑:
某些底图版本没有日期线交叉.文件格式基本相同