.TH feedGnuplot 1 22.12.2016 likwid\-4 .SH NAME feedGnuplot \- General purpose pipe-oriented plotting tool .SH SYNOPSIS .B likwid-setFreq .IR .IR .IR [] .SH DESCRIPTION .B feedGnuplot is a pipe-oriented plotting frontend for GNUplot that can read internediate results and create a sort of live plot of the data. .B feedGnuplot is used by .B likwid-perfscope(1) to print performance counter data printed out by the timeline daemon mode of .B likwid-perfctr(1). The Perl script .B feedGnuplot is not written by the LIKWID Authors, it was written by Dima Kogan and published under GPL. The original web page is https://github.com/dkogan/feedgnuplot .SH OPTIONS .TP .B \-h prints a help message to standard output, then exits.# .TP .B \-\-[no]domain If enabled, the first element of each line is the domain variable. If not, the point index is used. .TP .B \-\-[no]dataid If enabled, each data point is preceded by the ID of the data set that point corresponds to. This ID is interpreted as a string, NOT as just a number. If not enabled, the order of the point is used. .TP .B \-\-[no]3d Do [not] plot in 3D. This only makes sense with .B --domain. Each domain here is an (x,y) tuple. .TP .B \-\-colormap Show a colormapped xy plot. Requires extra data for the color. zmin/zmax can be used to set the extents of the colors. Automatically increments extraValuesPerPoint. .TP .B \-\-[no]stream Do [not] display the data a point at a time, as it comes in. .TP .B \-\-[no]lines Do [not] draw lines to connect consecutive points. .TP .B \-\-[no]points Do [not] draw points. .TP .B \-\-circles Plot with circles. This requires a radius be specified for each point. Automatically increments extraValuesPerPoint. .TP .B \-\-xlabel " xxx Set x-axis label. .TP .B \-\-ylabel " xxx Set y-axis label. .TP .B \-\-y2label " xxx Set y2-axis label. Does not apply to 3d plots. .TP .B \-\-zlabel " xxx Set z-axis label. Only applies to 3d plots. .TP .B \-\-title " xxx Set the title of the plot. .TP .B \-\-legend " curveID=legend Set the label for a curve plot. Use this option multiple times for multiple curves. With .B --dataid , curveID is the ID. Otherwise, it's the index of the curve, starting at 0. .TP .B \-\-autolegend Use the curve IDs for the legend. Titles given with .B --legend override these. .TP .B \-\-xlen " xxx When using .B --stream , sets the size of the x-window to plot. Omit this or set it to 0 to plot ALL the data. Does not make sense with 3d plots. Implies .B --monotonic .TP .B \-\-xmin " xxx Set the minimal point in range for the x-axis. These are ignored in a streaming plot. .TP .B \-\-xmax " xxx Set the maximal point in range for the x-axis. These are ignored in a streaming plot. .TP .B \-\-ymin " xxx Set the minimal point in range for the y-axis. .TP .B \-\-ymax " xxx Set the maximal point in range for the y-axis. .TP .B \-\-y2min " xxx Set the minimal point in range for the y2-axis. Does not apply to 3d plots. .TP .B \-\-y2max " xxx Set the maximal point in range for the y2-axis. Does not apply to 3d plots. .TP .B \-\-zmin " xxx Set the minimal point in range for the z-axis. Only applies to 3d plots or colormaps. .TP .B \-\-zmax " xxx Set the maximal point in range for the z-axis. Only applies to 3d plots or colormaps. .TP .B \-\-y2 " xxx Plot the data specified by this curve ID on the y2 axis. Without .B --dataid , the ID is just an ordered 0-based index. Does not apply to 3d plots. .TP .B \-\-curvestyle " curveID=style Additional styles per curve. With .B --dataid , curveID is the ID. Otherwise, it's the index of the curve, starting at 0. Use this option multiple times for multiple curves. .TP .B \-\-curvestyleall " xxx Additional styles for ALL curves. .TP .B \-\-extracmds " xxx Additional commands. These could contain extra global styles for instance. .TP .B \-\-size " xxx Gnuplot size option. .TP .B \-\-square Plot data with aspect ratio 1. For 3D plots, this controls the aspect ratio for all 3 axes. .TP .B \-\-square_xy For 3D plots, set square aspect ratio for ONLY the x,y axes. .TP .B \-\-hardcopy " xxx If not streaming, output to a file specified here. Format inferred from filename. .TP .B \-\-maxcurves " xxx The maximum allowed number of curves. This is 100 by default, but can be reset with this option. This exists purely to prevent perl from allocating all of the system's memory when reading bogus data. .TP .B \-\-monotonic If .B --domain is given, checks to make sure that the x-coordinate in the input data is monotonically increasing.If a given x-variable is in the past, all data currently cached for this curve is purged. Without .B --monotonic , all data is kept. Does not make sense with 3d plots. No .B --monotonic by default. .TP .B \-\-extraValuesPerPoint " xxx How many extra values are given for each data point. Normally this is 0, and does not need to be specified, but sometimes we want extra data, like for colors or point sizes or error bars, etc. .B feedGnuplot options that require this (colormap, circles) automatically set it. This option is ONLY needed if unknown styles are used, with .B --curvestyleall for instance. .TP .B \-\-dump Instead of printing to gnuplot, print to STDOUT. For debugging. .SH EXAMPLE .IP 1. 4 Simple real-time plotting example: plot how much data is received on the wlan0 network interface in bytes/second .TP .B while true; do sleep 1; cat /proc/net/dev; done | gawk '/wlan0/ {if(b) {print $2-b; fflush()} b=$2}' | \\ .B feedgnuplot --lines --stream --xlen 10 --ylabel 'Bytes/sec' --xlabel seconds .PP Reads the stats of the network interface 'wlan0' every second, reformats it with .B gawk and pipes the formatted output into .B feedGnuplot qto create a line plot ( .B --lines ) of the streaming input ( .B --stream ). Always show the last 10 seconds ( .B --xlen ) and use the labels 'seconds' for the x-axis and 'Bytes/sec' for the y-axis. .IP 2. 4 Simple real-time plotting example: plot the 'idle' CPU consumption against time .TP .B sar 1 -1 | awk '$1 ~ /..:..:../ && $8 ~/^[0-9\.]*$/ {print $1,$8; fflush()}' | \\ .B feedgnuplot --stream --domain --lines --timefmt '%H:%M:%S' --set 'format x "%H:%M:%S"' .PP Reads the CPU IDLE consumption and sets the current time as x-axis key. .SH AUTHOR Written by Dima Kogan . .SH BUGS Report Bugs on . .SH "SEE ALSO" gnuplot(1), awk(1), sar(1), likwid-perfscope(1), likwid-perfctr(1)