I want to represent streaming data using gnuplot. I tried it to plot using commands like 'replot','pause' and 'reread'. But its too slow and weird when data set is so large and similar.Is there any other way to plot streaming data
1 Answer
feedgnuplot is a Perl wrapper script around Gnuplot which does exactly what you describe using replot. It has a realtime streaming mode with option --stream. The documentation has an example where a live graph of bandwidth use of a network interface is drawn. If some option you need is not directly supported by feedgnuplot, you can sitll pass options through to gnuplot, so all drawing styles, axis settings etc are supported.
rereadas that causes gnuplot to reprocess the script, not the data.pauseis somewhat akin tosleepin other languages although you canpauseuntil mouse commands or whatever.replotorrefreshis what you want -- there's no way (that I know of) to update the data that you've already given gnuplot. You just need to give it new data and let it read the whole dataset in again.