As a scientific software company, we need a flexible, highly capable plotting framework to do the visualizations that are required by scientists and engineers. Plots need to be interactive. We need to be able to control what is plotted on-the-fly while also using plots as graphical input widgets to get information from the user. Plots need to be fast and look good.
We have made a fast component-based graphical toolkit for general drawing. Drawings can be easily composed from reusable components. Chaco provides plotting-specific drawing components. The components are geared towards efficiency such that expensive redraws only happen when necessary. GUI events like mouse clicks and drags propagate through the component hierarchy. This framework allows the creation of rich, graphical data manipulation tools to serve the varied needs of analysts. Chaco is part of our open source toolset.