Google Summer of Code 2017 PEcAn

Shubham Agarwal
2 min readAug 23, 2017

--

I was selected as a Google Summer of Code (GSoC) 2017 student for the PEcAn organization. I have been working on the project “Scientific Visualization” since end of May.

The PEcAn (Predictive Ecosystem Analyser) project is an open source system for ecosystem modelling and forecasting.

Related Links:

1. About PEcAn
2. GSoC project for PEcAn “Scientific Visualization
3. Project Proposal
4. Final project summary: public link submitted as GSoC submission

For an aspiring PEcAn developer, these snippets and concepts can come in handy.
All information related to the Github repository, pull requests and the commit history can be found here.

Main tasks/achievements

The progress of our work on the Shiny dashboard could be well summarised as:

  1. Adding interactiveness using ggploltly
  2. Refactoring of code
  3. Load multiple outputs of the model
  4. Ways to toggle geometries (e.g. geom_point vs. geom_line).
  5. Smoothing using geo_smooth. Slider for specifying moving window width
  6. Comparing model output vs loaded data

For other changes and detailed information, kindly look over the commit history.

Screenshot of the final working dashboard

Technical Details

  1. PecanProject github
  2. Forked Repository
  3. Branch: shiny-viz-gsoc
  4. Latest PR: Shiny GSoC Final Submission

Further Improvements

  1. Input id related issue in the db. This is an issue with the db where file names are not saved properly.
  2. For now, actual ‘observations’ (loaded external data) can be plotted against a single model run (particular run id) only.
  3. Refactoring of code related to point 2 could allow toggling different plot type for model and the loaded observations
  4. Default selected workflow id when user lands on the shiny app (workflowPlot)
  5. Toggle option for ggplotly (interactive) and ggplot (static) graphs in cases where model data is too big and becomes slow with interactiveness.

All other information related to the GSoC project, weekly discussions and summary, can be found here.

--

--

Shubham Agarwal

Learning never stops! Opinions my own. Grad Student. Multimodal Conv AI. Homepage: https://shubhamagarwal92.github.io