Future implementations (not yet implemented!)
- “keep tracks” setting to force paths to not disappear
- segmentation coulouring
- optional user-defined font sizes of all fonts (axis, annotations etc.), colours based on ggplot2 syntax
- optional user-defined map elements position vectors
Maybe next version:
- user-defined area of interest (AOI), which scales map extent to specific area without excluding tracks “out of sight”, enables move-in and move-out of individuals to AOI
- follow population mode
- follow individual mode
- day-/night-time visualization
- dynamic overplotting, e. g. polygons or points that change over time
- 3D animations, e.g. for including altitude data
Reorganizing standard basemap usage by moveVis
- Static basemaps defined through
map_type are now retrieved from either OpenStreetMaps for thematic imagery or Microsoft Bing Maps for satellite/hybrid imagery. The usage of OpenStreetMaps is free. For intensive use of the Bing Maps basemap options, please provide your own Bing Maps API key through the
api_key argument, after registering at Microsoft here: https://msdn.microsoft.com/en-us/library/ff428642.aspx. Google Maps services will be implemented in a future update for restricted usage using an API key.
- New baemaps options via
map_type: “satellite” (default), “hybrid”, “roadmap”, “roadmap_dark”, “roadmap_bw”, “roadmap_watercolor”.
- New argument
animate_move: Increase or decrease the degree of detail of a static basemap.
- New argument
animate_move: Define, if a static basemap should be cropped to the extent of
m or if a wider extent of optimal resolution should be used.
- Major bug causing moveVis to break with each available static basemap option due to changes of the Google Maps API policies.
Updating unit tests for CRAN checks
- Bug causing unit tests to fail on machines with different external tools available
- added SystemRequirements field in DESCRIPTION
Windows library detection bugs fixed (dev. version)
time_pos_x allow to specify the location of the timestamp display
time_size allows to specify the font size of the timestamp display
- added unit tests
- Bug causing moveVis to not properly detect installed extern libraries that can be called from the command line
- Bug causing moveVis to not use conv_dir if it contains a Windows path to a tool of an extern library
video support, automatic time harmonization, bug fixes (CRAN version)
get_libraries() – handles all extern libraries that are needed for video formats. Just run it to get information on what you need to install. Replaces get_imconvert(), which can still be called for code compatibility reasons
get_formats() – outputs all file formats that can be used with moveVis depending on which libraries are installed on the system.
- moveVis supports now multiple video formats in addition to GIF, if it is linked to a video library (either FFmpeg of libav)
- animate_move() now detects temporal resolution and uniformity of timestamps automatically to determine, if interpolation needs to be applied to calculate uniform frame times per frame tick
- animate_move() now calculates and displays the final animation duration derived from the total number of output frames and the fps prior to generating each frame, so that the user can already approximate which size the output animation will have.
- added “frames_tres” to animate_move() to change temporal resolution through linear interpolation
- added “frames_pixres” to animate_move() to adjust frame ppi
- added “paths_na.hold” to animate_move() for defining how to deal with data gaps (hold or not hold last path location)
- added “time_bar_col” to animate_move() for changing colouring of the time bar at the top border of the map
- added “out_format” to animate_move() for defining output file format
- added “indi_names” to animate_move() for defining individual names vector manually
- added “scalebar_dist” to animate_move() for defining the scalebar length manually
- added “overwrite” to animate_move() to regulate output file writing behaviour
- it is now possible to use the ‘layer’ argument to specify one (static) raster object without specifying ‘layer_dt’, which is only needed, if several raster objects are handed over as a list.
- in some situations, the movement data extent was bigger than the cropped layer extent: this works now
- in some situations, stat animation lines were cut off, this should be resolved now
- recoding of multiple processing steps to increase processing speed and stability
- increased error handler by several errors likely to occure
- several bug fixes
- AniMove 2017 participants
adding frames_layout, static_data etc., improvements to workflow
- RGB stats support added for animate_stats() and animate_move()
- added animate_move() argument “time_scale” to enable a time scale
- added animate_move() argument “frame_layout” for user friendly, complex layouting of the output GIF by specifiying the plot locations
- added animate_move() argument “layer_stretch”
- added animate_move() expert arguments “conv_cmd” and “conv_frames”
- several major bug fixes
- major animate_raster() bug fixes, reenabling use of RGB rasterStack inputs
- stats legend is now locatable using frame_layout
- fixed a bug of get_imconvert() that caused it to have issues with finding convert.exe on Windows machines, if ImageMagick is preinstalled
adding animate_stats() and stats arguments for animate_move()
animate_stats() – Enables creation of statistic plot animations visualizing possible relationships between movement paths and basemap. Define individual plot designs based on ggplot2 syntax.
- stats arguments for animate_move(): Enables statistic plot animations side-by-side with the spatial plot animation of animate_move. Use the animate_stats() arguments with animate_move().
- extent_factor argument for animate_move(): Increase the distance between the spatial extents of the movement paths and the basemap.
fixing major bug
- Fixed a major bug causing an unavoidable error when creating animations with animate_move() using user defined basemaps (Error message: ‘Error in eval(expr, envir, enclos) : Object ’frame_l’ not found’)
adding frame_width and frame_height arguments
- Added two new arguments to animate_move() function for changing output frame resolution
Bug report contributors:
fixing important bug; adding animate_raster()
- Added moveStack support: animate_move() now takes also moveStack objects in addition to list objects
animate_raster() – for animating just basemaps/for doing the same as with animate_move(), but without movement data
- Bug fix: Function now takes movebank.org data –> there had been a static code line preventing the read-out of movement coordinates, which is now solved.
- Several major and minor bug fixes
Bug report contributors:
- bart1 (at) github
- Patrick Scherler
Initial example data sets:
This document should provide a broad overview on changes that are applied to the moveVis R package. There is no warranty for completeness, since minor changes might not be included. All improvement and feature descriptions are bundled per release version. The document is currently maintained by Jakob Schwalb-Willmann.