Live data from Hacker News

Python Graph Gallery

python-graph-gallery.com

21–30 of 32 posts

Re: Python Graph Gallery

#21
bad charts link is broken.

Missing gantt charts. These are good for plotting logs in distributed systems so you can line up the events. Sadly you have to use hbox in matplotlib which isn't ideal (but it works).

Re: Python Graph Gallery

#22
post #9

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 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…

Does 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 fra…

What 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.

Re: Python Graph Gallery

#23
post #9

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 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…

Does 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 fra…

Bokeh supports streaming data to existing graphs. This lets you define a graph, display it in a browser, and then push updates from your code. This is a lot lighter than doing a full draw in matplotlib, plus works over the web.

Here's an intro blog post from 2013 [0] and a current tutorial [1]. This functionality depends on Bokeh Server, docs here [2]

[0] https://www.anaconda.com/developer-blog/painless-streaming-p...

[1] http://nbviewer.jupyter.org/github/bokeh/bokeh-notebooks/blo...

[2] https://bokeh.pydata.org/en/latest/docs/user_guide/server.ht...

Re: Python Graph Gallery

#24

Earlier quoted context omitted.

Does 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 fra…

Bokeh supports streaming data to existing graphs. This lets you define a graph, display it in a browser, and then push updates from your code. This is a lot lighter than doing a full draw in matplotlib, plus works over the web. Here's an intro blog post from 2013 [0] and a current tutorial [1]. This functionality depends on Bokeh Server, docs here [2] [0] https://www.anaconda.com/developer-blog/painless-streaming-p..…

Oh that sounds excellent, I'll have to check it out.

Re: Python Graph Gallery

#25
Very cool resource, thanks for putting it out there. Noticed a couple areas for improvement:

Contribution instructions: Per the contributors page, it looks like an email is the way to go [0]. It would be nice to be able to run the standard Github workflow, but the relevant repo seems abandoned [1]

Site performance: The site looks good and has strong content, but loads slowly & inconsistently. (could just be the hug of death). Chrome warns the page is loading unauthenticated resources. I suggest you look at using a static website deployed to a CDN. Github pages, Netlify [2], etc are reasonable ways to do that. If you want comments, you can do that on Github.

[0] https://python-graph-gallery.com/contributors/ [1] https://github.com/holtzy/The-Python-Graph-Gallery [2] https://www.netlify.com/

Re: Python Graph Gallery

#26

Earlier quoted context omitted.

Does 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 fra…

What 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.

Rabbitmq 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/firs...

Re: Python Graph Gallery

#27

Earlier quoted context omitted.

Does 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 fra…

Bokeh supports streaming data to existing graphs. This lets you define a graph, display it in a browser, and then push updates from your code. This is a lot lighter than doing a full draw in matplotlib, plus works over the web. Here's an intro blog post from 2013 [0] and a current tutorial [1]. This functionality depends on Bokeh Server, docs here [2] [0] https://www.anaconda.com/developer-blog/painless-streaming-p..…

coincidentally: https://news.ycombinator.com/item?id=15483264

Re: Python Graph Gallery

#28
post #9

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 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…

Does 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 fra…

You should check out https://github.com/IGITUGraz/live-plotter (I am the author of the package)

It is designed exactly for this use-case -- visualizing results of an ongoing simulation. It does best effort plotting, but doesn't block computation for plotting. I would be happy to receive feedback on the package.

Re: Python Graph Gallery

#29
post #9

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 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…

Does 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 fra…

Veusz (https://veusz.github.io/) does this. Data are sent to the plotting process using pickle over a socket.

Re: Python Graph Gallery

#30

Earlier quoted context omitted.

Does 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 fra…

You should check out https://github.com/IGITUGraz/live-plotter (I am the author of the package) It is designed exactly for this use-case -- visualizing results of an ongoing simulation. It does best effort plotting, but doesn't block computation for plotting. I would be happy to receive feedback on the package.

Cool, thanks.
Post reply on HN