0

我有一些 hdf5 格式的 LVIS 激光雷达数据。

数据有纬度和经度坐标,所以我已经能够使用底图在地图上可视化它们:

f = h5py.File('ILVIS1B_GA2016_0304_R1701_043591.h5','r')

LONG = f['/LON0/']
LAT = f['/LAT0/']


X = LONG[...]
Y = LAT[...]

m = Basemap(projection='merc',llcrnrlat=-0.5,urcrnrlat=0.5,\
        llcrnrlon=9,urcrnrlon=10,lat_ts=0.25,resolution='i')
m.drawcoastlines()
m.drawcountries()
parallels = np.arange(-9.,10.,0.5)
m.drawparallels(parallels,labels=[False,True,True,False])
meridians = np.arange(-1.,1.,0.5)
m.drawmeridians(meridians,labels=[True,False,False,True])
m.drawmapboundary(fill_color='white')
x,y = m(X, Y)
scatter = plt.scatter(x,y)
m.scatter(x,y)
plt.show()

这让我明白了,橙色带是非常密集的点:

在此处输入图像描述

hdf5 文件还包含每个映射点的完整波形数据(每个数据点是传感器检测到的反射,作为时间的函数),因此每个橙色点都有与之关联的数据,例如:

在此处输入图像描述

最终,我希望能够单击任何橙色点并显示随后的波形。我为此研究了交互式绘图,并遇到了许多库(mpl3d、plotly 等)。

我在理解其中一些问题以及如何将数据放入示例时遇到了一些麻烦——我的 python 没有达到这个水平。有人对从哪里开始有任何建议吗?哪些图书馆最适合这个?对理解基础知识的一点帮助将不胜感激。

抱歉,这里没有直接的问题,我只是从知识渊博的社区获得一些信息。

4

1 回答 1

1

问题似乎是:我如何处理我不知道如何解决的任务?

  • 第 1 步:寻找可能的解决方案。其他人可能已经解决了您的问题。大多数情况下并非如此,但您可能很幸运。
  • 第 2 步:抽象任务。很多人可能遇到的普遍问题是什么,并且可能有解决方案?它需要是hdf5文件吗?不,地理配准重要吗?也许吧,但暂时可以忽略。哪些要求真的很重要,哪些不重要?
  • 第三步:再次搜索。现在,您将在查找类似或相关问题方面取得更大的成功。
  • 第 4 步:查看正在使用的工具。列出可能的工具并检查您的要求。交互性、应用程序或基于网络、准确性等。
  • 第 5 步:决定使用一种工具并使用它。从一般案例研究开始。我可以使用此工具在左侧绘制地图并在右侧绘制图表吗?如果不是,请找出原因 - 也许这是一个普遍的问题,也许只是缺少一个实现细节。此时,您可能会询问有关案例研究问题的问题,指定正在使用的工具并提供给出问题的代码。在解决之前不要考虑您的实际问题。
  • 第 6 步:继续并尝试添加交互性。点击时我可以发生一些事情吗?再次独立于实际问题来处理这个问题。搜索解决方案,如果没有,请提出相关问题。
  • 第 7 步:继续前进到您真正陷入困境的地步。现在是最后在这里提出问题的时候了,但所有细节都让您进入问题中的第 7 步。
于 2018-03-24T20:57:28.293 回答