-
Notifications
You must be signed in to change notification settings - Fork 0
Project. GSoC 2015
VisPy is a high-performance interactive visualization library in Python that brings the power of graphics cards (modern OpenGL: shaders, vertex buffer objects, etc.) to the masses. While VisPy primarily targets scientific visualization of very large datasets, it also offers a powerful and flexible infrastructure for building beautiful and fast data-intensive graphical applications in Python.
VisPy supports visualizations on desktop OpenGL and WebGL in the browser with OpenGL ES 2.0.
VisPy is a relatively young library. The main building blocks are implemented, and we're currently consolidating the main user API. Users can already create 2D and 3D visualizations without knowing OpenGL. We also offer a Pythonic object-oriented API directly on top of OpenGL for those who want maximum flexibility.
We are five Python developers who have worked on our own visualization libraries in the past. We then decided to team up. Eventually, we all want to see our own libraries superseded by VisPy.
- Interested in scientific plotting, data visualization, real-time graphics, video games, demo scene, computer art...
- Experience with Python
- Experience with open source development, including collaborative workflows, Git/Github, issue tracking...
- Experience with code quality: unit testing, test-driven development, documentation, continuous integration...
- Have publicly available code source and projects we can look at.
Difficulty: Easy
Mentors: Nicolas Rougier, Eric Larson
One of us (Nicolas Rougier) has implemented experimental ideas in his project, Glumpy. We now want to include them in VisPy. See this issue.
- High priority: Axes, grids, ticks visuals
- More visualizations examples
- More visuals
- Collection system
This project will require ability to work in both Python and GLSL.
Difficulty: Easy
Mentors: Cyrille Rossant, Eric Larson
Develop a high-quality, user-friendly plotting interface similar to bokeh and seaborn. This mostly involves understanding what high-level API calls users will want access to, and hooking up those APIs with lower-level plotting calls. The lower-level calls may need to be adapted in order to provide necessary functionality. This will likely only require knowledge of Python, not GLSL.
Difficulty: Hard
Mentors: Cyrille Rossant, Almar Klein
Using some of the ideas developed in the Kivy project. This is involves slightly more complex hardware-software interface work, although the Pi's support of OpenGL ES 2.0 should make this tractable for a summer project.
Difficulty: Hard
Mentors: Cyrille Rossant, Eric Larson
See this for more details. The main part will be a light JavaScript implementation of NumPy. This component would be helpful when porting Python visualizations to JavaScript. This will require working knowledge of Python, NumPy, and Javascript.
- Cyrille Rossant: available throughout the summer
- Eric Larson: available throughout the summer
- Nicolas Rougier: likely available through the summer
- Almar Klein: available throughout most of the summer
- Luke Campagnola: TBD
The information page for 2015 is here: https://wiki.python.org/moin/SummerOfCode/2015
-
Mailing lists:
- https://mail.python.org/mailman/listinfo/soc2015-general (subscribe to this one to help students out!)
- https://mail.python.org/mailman/listinfo/soc2015-mentors (subscribe to this one to get 2015 announcements)
-
IRC Channel:
- #python-gsoc on Freenode