GPS轨迹动画库

trackanimation的Python项目详细描述


track animation是一个python 2和3库,它提供了一种简单且用户可调整的方法,即creating visualizations from gps data轻松且无需任何技术约束。它允许从gpx(gps交换格式)和csv文件导入gps数据,以便对其进行操作,最后,创建videosimages、图像序列或interactive maps以根据轨道的高度、速度、持续时间或任何其他指标分析轨道。

track animation使用的主要第三方库是gpxpy解析和读取gpx文件,pandas操作所有gps数据,以及matplotlib绘制和保存可视化效果。

要创建基本的可视化,只需读取文件并将其传递给animationtrack类:

importtrackanimationfromtrackanimation.animationimportAnimationTrackinput_directory="example-routes/"ibiza_trk=trackanimation.read_track(input_directory)fig=AnimationTrack(df_points=ibiza_trk,dpi=300,bg_map=True,map_transparency=0.5)fig.make_video(output_file='simple-example',framerate=60,linewidth=1.0)

Simple-Example

安装

使用pip

安装track动画
pip install trackanimation

或者,download the source files from PyPI

开始

您可以在examples.py文件中找到以下示例。

按位置过滤

可以过滤一组轨迹,以仅检索属于特定位置的点或经过该位置的整个轨迹。使用timevideonormalize函数,所有曲目将在视频中同时开始和结束,并在参数中指定其持续时间和帧速率。在下一个示例中,创建的视频的持续时间为10秒,每秒10帧。

importtrackanimationfromtrackanimation.animationimportAnimationTrackinput_directory="example-routes/"ibiza_trk=trackanimation.read_track(input_directory)sant_josep_trk=ibiza_trk.get_tracks_by_place('Sant Josep de sa Talaia',only_points=False)sant_josep_trk=sant_josep_trk.time_video_normalize(time=10,framerate=10)fig=AnimationTrack(df_points=sant_josep_trk,dpi=300,bg_map=True,map_transparency=0.5)fig.make_video(output_file='filtering-by-place',framerate=10,linewidth=1.0)

Filtering-Place

用一个指示器标记轨迹

此外,可以将轨迹的指示器可视化为调色板,以使数据的分析和解释更容易和有效。

importtrackanimationfromtrackanimation.animationimportAnimationTrackinput_directory="example-routes/ibiza.csv"ibiza_trk=trackanimation.read_track(input_directory)ibiza_trk=ibiza_trk.time_video_normalize(time=10,framerate=10)ibiza_trk=ibiza_trk.set_colors('Speed',individual_tracks=True)fig=AnimationTrack(df_points=ibiza_trk,dpi=300,bg_map=True,map_transparency=0.5)fig.make_video(output_file='coloring-map-by-speed',framerate=10,linewidth=1.0)# Variable 'bg_map' must be to False in order to create an interactive mapfig=AnimationTrack(df_points=ibiza_trk,dpi=300,bg_map=False,map_transparency=0.5)fig.make_map(output_file='coloring-map-by-speed')

Click to view the interactive map

Coloring-Tracks

可视化多组轨迹

可以在同一个可视化视图中独立绘制多组轨迹以进行比较。

importtrackanimationfromtrackanimation.animationimportAnimationTrackinput_directory="example-routes/"ibiza_trk=trackanimation.read_track(input_directory)sant_josep_trk=ibiza_trk.get_tracks_by_place('Sant Josep de sa Talaia',only_points=False)ibiza_trk=ibiza_trk.set_colors('Speed',individual_tracks=True)sant_josep_trk=sant_josep_trk.set_colors('Speed',individual_tracks=True)fig=AnimationTrack(df_points=[ibiza_trk,sant_josep_trk],dpi=300,bg_map=True,map_transparency=0.5)fig.make_image(output_file='multiple-axes')

Multiple-Axes

文件

更多文档和示例可以在Track Animation PDF document找到。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
jstl中循环内部的java方法   java如何以编程方式查找iOS应用程序的堆内存?   java JPA列注释   http Java在Web浏览器中显示HttpResponse的内容   ssl Java如何接受我的自签名证书而不必将其添加到Java信任库   java解析bufferedReader数据,在某些字符处停止   java将具有多个属性的对象映射到另一个对象,然后收集到列表   java是否可以将抽象方法的返回类型设置为与类相同?   java Android导航抽屉,带有菜单图标而非后退按钮   如何在JavaSpringMVC中防止会话重放攻击?   是VB。NET SmtpClient API受限于Java SendMail?   跨多线程/节点的java会话管理   来自Eclipse的java maven项目   使用已解析Java DOM XML中的元素添加新元素