tag: dataviz

Galry's Story, or the quest of multi-million plots


About a month ago, I announced here the availability of a new experimental high performance visualization package in Python that I'm developing as part of my current research project. It has significantly evolved since then, but it is still experimental. Moreover, the interface is still not ready for a 0.1 release. I also need to do much more tests on various systems and graphics cards. In this post I'll talk about how the idea of writing a new visualization package came up in the first place. I'll also describe the new features that are coming to the library.

The Power of Shaders in Real-Time Graphics Programming


I've been programming in OpenGL for a few months. Like a lot of programmers, I learnt the language by myself, thanks to various tutorials, books or e-books on the subject. One couldn't say there's a lack of resources on this 20-years old language since it's so widely used throughout the world. Yet, I was surprised to discover a few weeks ago that the vast majority of what I learnt has been obsolete for almost a decade. The reason is that too many textbooks and tutorials on the Internet about OpenGL refer to a deprecated way of programming and which relates to the fixed-function pipeline. The modern way of programming in OpenGL is to use the programmable pipeline through shaders. The free e-book by Jason McKesson is a very good resource for learning modern OpenGL programming using the programmable pipeline.

Introducing Galry, a high-performance interactive 2D visualization Python package


I'm releasing today the code of a first experimental version of Galry, a high-performance interactive 2D visualization Python package that I'm creating as part of my current research project.

2D graphics rendering tutorial with PyOpenGL


UPDATE: you may be interested in the Vispy library, which provides easier and more Pythonic access to OpenGL.

OpenGL is a widely used open and cross-platform library for real-time 3D graphics, developed more than twenty years ago. It provides a low-level API that allows the developer to access the graphics hardware in an uniform way. It is the platform of choice when developing complex 2D or 3D applications that require hardware acceleration and that need to work on different platforms. It can be used in a number of languages including C/C++, C#, Java, Objective-C (used in iPhone and iPad games), Python, etc. In this article, I'll show how OpenGL can be used with Python (thanks to the PyOpenGL library) to efficiently render 2D graphics.