Skip to content

Instantly share code, notes, and snippets.

@gmomo
Created August 28, 2017 05:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gmomo/040f0728cbe94171e9b95a836ac6f9ed to your computer and use it in GitHub Desktop.
Save gmomo/040f0728cbe94171e9b95a836ac6f9ed to your computer and use it in GitHub Desktop.
GSoC 207 Final Submission
The Python Ehub Tool is s an energy research and technology transfer platform aimed at optimizing energy management at district level and evaluating its influence on the overall energy system.
The Visualization Module is a vital addition to the tool. It helps in visualizing various parameters of the Energy System, such as Carbon Emissions,Costs, Generation among others. My GSoC project focused on developing this Visualization Tool using Python and integrating it with the main Ehub Tool.
Front End
The module takes in various system parameters and optimized variables and plots various graphs in a new browser window. It has a tabbed layout with each tab containing plots related to a particular quantity. All plots are interactive with zoom/pan and hover features. Plots can also be saved onto the computer as a jpeg file. Some plots have dropdown menus beside them, which allow the user to select different hubs/forms or technologies for that particular plot.
Back End
The tool is designed as a class called VizTool. For each tab in the frontend, it has a corresponding function in the class. There are two additional functions, the first is to create the layout and the second is to draw a custom legend for the plots. The plots are drawn using the bokeh library for python. The class needs to import certain variables from the ehub tool which is a python notebook. The notebook_import.py file helps to import those variables.
Link to Visualization Tool - https://github.com/hues-platform/python-ehub/blob/master/code/vis_class.py
Link to notebook_import.py - https://github.com/hues-platform/python-ehub/blob/master/code/notebook_import.py
Challenges
1. Network Plots
2. Integrating with the Python Notebook
Further Work
1. Certain minor layout changes
2. Further plots and graphs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment