Compare commits

..

5 Commits

Author SHA1 Message Date
Dima Kogan
fa997f2c16 changelog bump 2014-08-22 17:26:39 -07:00
Dima Kogan
62a38826ee Merge commit '8cc51461a327a6c792e81617ab57b7604b1c9187' into stir_nopersist 2014-08-22 17:26:13 -07:00
Dima Kogan
8cc51461a3 disabling --persist because on our arm board it confuses things
with --persist enabled even something basic like

 seq 5 | feedgnuplot --terminal dumb

does not work. feedgnuplot simply sits there doing nothing. This is likely a
gnuplot bug. Those boards run an older gnuplot build, and I can't easily install
a new one to test. It's possible the newer gnuplots fix this, but it's easier to
release a new feedgnuplot instead
2014-08-22 17:18:30 -07:00
Dima Kogan
0c32afacfd fixed typo 2014-08-22 17:17:18 -07:00
Dima Kogan
1688496f34 an "exit" command now has effect even with triggered-only replotting 2014-05-28 02:34:39 -07:00
3 changed files with 17 additions and 36 deletions

View File

@@ -75,6 +75,7 @@ if($options{stream})
}
$streamingFinished = 1;
$dataQueue->enqueue(undef);
$plotThr->join() if defined $plotThr;
$addThr->join();
@@ -413,8 +414,6 @@ sub plotUpdateThread
# indicate that the timer was the replot source
$dataQueue->enqueue('replot timertick');
}
$dataQueue->enqueue(undef);
}
sub sendRangeCommand
@@ -455,14 +454,6 @@ sub makeDomainNumeric
sub mainThread
{
local *PIPE;
pipe my ($pipe_readdata, $pipe_writedata);
my $dopersist = '';
if( getGnuplotVersion() >= 4.3)
{
$dopersist = '--persist';
}
if(exists $options{dump})
{
@@ -472,7 +463,7 @@ sub mainThread
{
my $geometry = defined $options{geometry} ?
"-geometry $options{geometry}" : '';
open PIPE, "|gnuplot $geometry $dopersist" or die "Can't initialize gnuplot\n";
open PIPE, "|gnuplot $geometry" or die "Can't initialize gnuplot\n";
}
autoflush PIPE 1;
@@ -646,8 +637,7 @@ sub mainThread
if(/^replot/o )
{
# /timertick/ determines if the timer was the source of the replot
replot( $pipe_readdata, $pipe_writedata,
$domain0_numeric, /timertick/ );
replot( $domain0_numeric, /timertick/ );
next;
}
@@ -703,8 +693,7 @@ sub mainThread
# the x-coordinate of the new point is in the past, so I wipe out
# all the data and start anew. Before I wipe the old data, I
# replot the old data
replot( $pipe_readdata, $pipe_writedata,
$domain0_numeric );
replot( $domain0_numeric );
clearCurves();
$latestX = undef;
}
@@ -763,7 +752,7 @@ sub mainThread
}
# finished reading in all. Plot what we have
plotStoredData($pipe_readdata, $pipe_writedata);
plotStoredData();
if ( defined $options{hardcopy})
{
@@ -772,7 +761,7 @@ sub mainThread
# sleep until the plot file exists, and it is closed. Sometimes the output
# is still being written at this point. If the output filename starts with
# '|', gnuplot pipes the output to that process, instead of writing to a
# file. In that case I don't make sure the file exists, since there IS not
# file. In that case I don't make sure the file exists, since there IS no
# file
if( $options{hardcopy} !~ /^\|/ )
{
@@ -823,22 +812,18 @@ sub pruneOldData
sub plotStoredData
{
my ($pipe_readdata, $pipe_writedata) = @_;
# get the options for those curves that havse any data
my @nonemptyCurves = grep { $_->{datastring} } @curves;
my @extraopts = map {$_->{options}} @nonemptyCurves;
my $fd = fileno $pipe_readdata;
my $body = join(', ' , map({ "'<&$fd' $_" } @extraopts) );
my $body = join(', ' , map({ "'-' $_" } @extraopts) );
if($options{'3d'}) { print PIPE "splot $body\n"; }
else { print PIPE "plot $body\n"; }
foreach my $curve (@nonemptyCurves)
{
print $pipe_writedata $curve->{datastring};
print $pipe_writedata "e\n";
print PIPE $curve->{datastring};
print PIPE "e\n";
}
}
@@ -985,8 +970,7 @@ sub replot
# }
my ($pipe_readdata, $pipe_writedata,
$domain0_numeric, $replot_is_from_timer) = @_;
my ($domain0_numeric, $replot_is_from_timer) = @_;
my $now = [gettimeofday];
@@ -1017,7 +1001,7 @@ sub replot
sendRangeCommand( "xrange", $xmin, $xmax );
}
plotStoredData($pipe_readdata, $pipe_writedata);
plotStoredData();
# update replot state
@@ -1766,12 +1750,10 @@ in a Thinkpad.
$ while true; do cat /proc/acpi/ibm/thermal | awk '{$1=""; print}' ; sleep 1; done |
feedgnuplot --stream --xlen 100 --lines --autolegend --ymax 100 --ymin 20 --ylabel 'Temperature (deg C)'
=head2 Plotting a histogram of file sizes in a directory, granular to 10MB
=head2 Plotting a histogram of file sizes in a directory
$ ls -l | awk '{print $5/1e6}' |
feedgnuplot --histogram 0 --with boxes
--binwidth 10 --set 'style fill solid'
--ymin 0 --xlabel 'File size (MB)' --ylabel Frequency
feedgnuplot --histogram 0 --with boxes --ymin 0 --xlabel 'File size (MB)' --ylabel Frequency
=head1 ACKNOWLEDGEMENT

6
debian/changelog vendored
View File

@@ -1,8 +1,8 @@
feedgnuplot (1.34-2) unstable; urgency=medium
feedgnuplot (1.34stir1-1) unstable; urgency=medium
* Depends now works with the 'gnuplot5' packages
* disabled --persist because on our arm board it confuses things
-- Dima Kogan <dima@secretsauce.net> Fri, 10 Oct 2014 14:05:17 -0700
-- Dima Kogan <dima@secretsauce.net> Fri, 22 Aug 2014 14:59:05 -0700
feedgnuplot (1.34-1) unstable; urgency=medium

3
debian/control vendored
View File

@@ -11,8 +11,7 @@ Vcs-Browser: http://anonscm.debian.org/gitweb/?p=debian-science/packages/feedgnu
Package: feedgnuplot
Architecture: all
Depends: ${misc:Depends}, ${perl:Depends},
gnuplot-qt | gnuplot-x11 | gnuplot-nox | gnuplot5-qt | gnuplot5-x11 | gnuplot5-nox | gnuplot
Depends: ${misc:Depends}, ${perl:Depends}, gnuplot-qt | gnuplot-x11 | gnuplot-nox
Description: Pipe-oriented frontend to Gnuplot
Flexible, command-line-oriented frontend to Gnuplot. Creates plots from data
coming in on STDIN or given in a filename passed on the commandline. Various