4 ms·
Check out plotly for general graphing use and bokeh for heavy loads. An exhaustive list of dataviz libraries is maintained at https://github.com/fasouto/awesom
by Dowwie 9y ago
Check out plotly for general graphing use and bokeh for heavy loads.
An exhaustive list of dataviz libraries is maintained at https://github.com/fasouto/awesome-dataviz https://github.com/fasouto/awesome-dataviz
For Python:
* altair - Declarative statistical visualizations, based on Vega-lite.
* bokeh - Interactive Web Plotting for Python.
* diagram - Text mode diagrams using UTF-8 characters
* ggplot - plotting system based on R's ggplot2.
* glumpy - OpenGL scientific visualizations library.
* holoviews - Complex and declarative visualizations from annotated data.
* matplotlib - 2D plotting library.
* missingno - provides flexible toolset of data-visualization utilities that allows quick visual summary of the completeness of your dataset, based on matplotlib.
* plotly - Interactive web based visualization built on top of plotly.js
* plotnine - A grammar of graphics for Python
* pygal - A dynamic SVG charting library.
* PyQtGraph - Interactive and realtime 2D/3D/Image plotting and science/engineering widgets.
* seaborn - A library for making attractive and informative statistical graphics.
* toyplot - The kid-sized plotting toolkit for Python with grownup-sized goals.
* Veusz - https://veusz.github.io
* VisPy - High-performance scientific visualization based on OpenGL.
- xioxox 9y agoIt's missing the Veusz multiplatform GUI plotting package and associated Python plotting library: https://veusz.github.io/ https://veusz.github.io/ (I am the main author) The saved files in Veusz are basically Python scripts which reproduce the plot. Plots are built by putting together different types of plotting widgets. These widgets can have their appearance and properties changed in the GUI. The program can also do various types of basic data analysis within the GUI. Plugins can be added for supporting different data formats, manipulating data or automating tasks.
- deleted 9y ago[deleted]
- Dowwie 9y agodo you not know how to fork , update, and submit a PR? if not, now you do
- eyeball 9y agohttps://plotnine.readthedocs.io/en/stable/ https://plotnine.readthedocs.io/en/stable/
- deleted 9y ago[deleted]
- radarsat1 9y agoDoes anyone know of a good non-blocking plotting library for Python? I find that for some applications matplotlib really slows down my loops, but there are times that I really need to visualize the in-progress computations. While some other libraries might be faster, what I really want is simply to send instructions and data to a separate process that is performing the plotting. I'd like it to completely render a frame and simply skip instructions for following frames until it's done rendering, avoid buffering up every single frame that is sent to it, and have it plot the next available frame when it's done. I have yet to see a library that functions this way. Basically I want to be able to easily visualize an on-going computation without blocking it just for the rendering of temporary results.
- malux85 9y agoThis is a cool idea. I would be open to working with you on this if you'd like to collaborate! (my contact in profile)
- MattConfluence 9y agoWhat I did when I had a similar problem was to have a completely separate visualization program and pass data messages to it (using Celery and RabbitMQ). But that was in a setting where I was already using Celery for other tasks. Setting up a message queue for just visualization feels a bit over-engineered. Maybe you can just write to a text file, or a Sqlite db, and have the visualization program poll for changes.
- oneweekwonder 9y agoRabbitmq or redis will already be in apt or yum so a simple sudo apt-get install rabbitmq-server # or redis pip install celery You are ready to use their example[0] from celery import Celery app = Celery('tasks', broker='pyamqp://guest@localhost//') @app.task def add(x, y): return x + y The idea of a mq might feel over-engineered. But the deployment and use is actually straight forward. [0]: http://docs.celeryproject.org/en/latest/getting-started/first-steps-with-celery.html#application http://docs.celeryproject.org/en/latest/getting-started/firs...
- 9y ago
- rplnt 9y agoI can vouch for pygal, if you can find what you need in the set it provides. I found it quite hard to customize some elements of it (ended up doing post-processing on the output SVG).