Future Development

\label{sec:future} The gadfly package is under active development, and in addition to incremental improvements of the existing functionality, a few significant upgrades are planned for future releases. First and foremost, the current gadfly units system is fairly inflexible, with limited support for additional units. For the next release we plan on replacing the existing units system, instead employing the far more versatile astropy.units framework \citep{Robitailleetal2013} as the backend for handling unit conversions. Future releases will also more seamlessly integrate gadfly’s visualization tools with the rest of the framework. At the moment the user is required to pass each required field to the visualization methods individually. We intend to integrate this functionality directly into the PartType dataframe, allowing the user to simply call PartType.visualize() and be presented with a default density projection of the SPH particles currently in the dataframe, similar to the .plot() functionality of a standard pandas.DataFrame.

In the longer term, the dask1 project presents an intriguing option for handling very large out-of-core datasets through the use of blocked algorithms and task scheduling. Dask manages this by mapping high-level numpy, pandas, and list operations on large datasets to many operations on smaller chunked datasets that can fit in memory. Future releases of gadfly may migrate the data structure on which the PartType dataframe is built from the pandas.DataFrame to dask.dataframe to take advantage of this functionality.


  1. http://dask.pydata.org