mirror of
https://github.com/dkogan/feedgnuplot.git
synced 2025-09-18 19:18:06 +08:00
Compare commits
13 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
350b2db022 | ||
![]() |
ba0f2eee08 | ||
![]() |
9237811ed0 | ||
![]() |
69285d7df1 | ||
![]() |
aedbc28afe | ||
![]() |
e865871492 | ||
![]() |
0f85110a38 | ||
![]() |
5cf4acca62 | ||
![]() |
319e86b667 | ||
![]() |
938e360e84 | ||
![]() |
d5e8906946 | ||
![]() |
e8f9e09090 | ||
![]() |
9df57fb65f |
30
Changes
30
Changes
@@ -1,3 +1,33 @@
|
||||
feedgnuplot (1.50)
|
||||
|
||||
* Script waits for the plot window to close before exiting
|
||||
Instead of sleeping forever. This is really nice! I no longer need
|
||||
to quit the plot window AND then C-c. Quitting the plot window is
|
||||
now sufficient
|
||||
* by default --image sets range noextend
|
||||
* tab-completion knows about the fnormal distribution
|
||||
|
||||
-- Dima Kogan <dkogan@debian.org> Fri, 24 Aug 2018 13:11:05 -0700
|
||||
|
||||
feedgnuplot (1.49)
|
||||
|
||||
* --vnl now works with plots that have rangesize > 1
|
||||
* zsh completion: --xlen argument isn't optional
|
||||
|
||||
-- Dima Kogan <dima@secretsauce.net> Fri, 16 Mar 2018 13:52:28 -0700
|
||||
|
||||
feedgnuplot (1.48)
|
||||
|
||||
* --vnlog works properly with --domain
|
||||
|
||||
-- Dima Kogan <dima@secretsauce.net> Sat, 24 Feb 2018 12:33:50 -0800
|
||||
|
||||
feedgnuplot (1.47)
|
||||
|
||||
* Fixed typo. Everything is un-broken now
|
||||
|
||||
-- Dima Kogan <dima@secretsauce.net> Fri, 23 Feb 2018 10:21:13 -0800
|
||||
|
||||
feedgnuplot (1.46)
|
||||
|
||||
* Added --tuplesize and --tuplesizeall as alternatives to --rangesize
|
||||
|
@@ -16,7 +16,7 @@ use Pod::Usage;
|
||||
use Time::Piece;
|
||||
|
||||
# Makefile.PL assumes this is in ''
|
||||
my $VERSION = '1.46';
|
||||
my $VERSION = '1.50';
|
||||
|
||||
my %options;
|
||||
interpretCommandline();
|
||||
@@ -465,10 +465,13 @@ sub interpretCommandline
|
||||
{
|
||||
# images generally have the origin at the top-left instead of the
|
||||
# bottom-left, so given nothing else, I flip the y axis
|
||||
if( !defined $options{ymin} && !defined $options{ymax} &&
|
||||
if( !defined $options{xmin} && !defined $options{xmax} &&
|
||||
!defined $options{ymin} && !defined $options{ymax} &&
|
||||
! any { /^ *xrange\b/ } @{$options{set}} &&
|
||||
! any { /^ *yrange\b/ } @{$options{set}} )
|
||||
{
|
||||
push @{$options{set}}, "yrange [:] reverse";
|
||||
push @{$options{set}}, "xrange [:] noextend";
|
||||
push @{$options{set}}, "yrange [:] reverse noextend";
|
||||
}
|
||||
|
||||
if ( ! -r $options{image} )
|
||||
@@ -865,6 +868,7 @@ sub mainThread
|
||||
# 3d plots require $options{domain}, and dictate "x y" for the domain instead of just "x"
|
||||
|
||||
my @fields = split;
|
||||
my $i_column = 0;
|
||||
|
||||
if($options{domain})
|
||||
{
|
||||
@@ -876,6 +880,7 @@ sub mainThread
|
||||
|
||||
$domain[0] = join (' ', splice( @fields, 0, $options{timefmt_Ncols}) );
|
||||
$domain0_numeric = makeDomainNumeric( $domain[0] );
|
||||
$i_column += $options{timefmt_Ncols};
|
||||
}
|
||||
elsif(!$options{'3d'})
|
||||
{
|
||||
@@ -884,6 +889,7 @@ sub mainThread
|
||||
next if @fields < 1+1;
|
||||
|
||||
$domain[0] = $domain0_numeric = shift @fields;
|
||||
$i_column += 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -892,6 +898,7 @@ sub mainThread
|
||||
next if @fields < 2+1;
|
||||
|
||||
@domain = splice(@fields, 0, 2);
|
||||
$i_column += 2;
|
||||
}
|
||||
|
||||
if( $options{monotonic} )
|
||||
@@ -915,8 +922,7 @@ sub mainThread
|
||||
$domain0_numeric = makeDomainNumeric( $domain[0] );
|
||||
}
|
||||
|
||||
my $id = -1;
|
||||
my $i_curve = 0;
|
||||
my $id = -1;
|
||||
while(@fields)
|
||||
{
|
||||
if ($options{dataid})
|
||||
@@ -925,14 +931,14 @@ sub mainThread
|
||||
}
|
||||
elsif($options{vnlog} )
|
||||
{
|
||||
if( $icurve >= @vnlog_headers )
|
||||
if( $i_column >= @vnlog_headers )
|
||||
{
|
||||
# Got more columns than vnlog headers. The data is probably
|
||||
# bogus, but I don't want to barf at the user, so I silently
|
||||
# ignore the data
|
||||
last;
|
||||
}
|
||||
$id = $vnlog_headers[$i_curve];
|
||||
$id = $vnlog_headers[$i_column];
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -948,7 +954,7 @@ sub mainThread
|
||||
splice( @fields, 0, $rangesize ) ) . "\n",
|
||||
$domain0_numeric);
|
||||
|
||||
$i_curve++;
|
||||
$i_column += $rangesize;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -984,7 +990,10 @@ sub mainThread
|
||||
# we persist gnuplot, so we shouldn't need this sleep. However, once
|
||||
# gnuplot exits, but the persistent window sticks around, you can no
|
||||
# longer interactively zoom the plot. So we still sleep
|
||||
sleep(100000000) unless $options{dump} || $options{exit};
|
||||
unless($options{dump} || $options{exit})
|
||||
{
|
||||
print PIPE "pause mouse close\n";
|
||||
}
|
||||
}
|
||||
|
||||
sub pruneOldData
|
||||
@@ -1407,7 +1416,7 @@ points palette>), variable sizes (C<with points ps variable>), labels and so on.
|
||||
The feedgnuplot tool itself does not know about all these intricacies, but they
|
||||
can still be used, by specifying the specific style with C<--style>, and
|
||||
specifying how many values are needed for each point with any of
|
||||
C<--rangesizeall, C<--tuplesizeall>, C<--rangesize>, C<--tuplesize>. These
|
||||
C<--rangesizeall>, C<--tuplesizeall>, C<--rangesize>, C<--tuplesize>. These
|
||||
options are required I<only> for styles not explicitly supported by feedgnuplot;
|
||||
supported styles do the right thing automatically.
|
||||
|
||||
|
@@ -16,7 +16,7 @@ _arguments -S
|
||||
'--zlabel:Z-axis label:' \
|
||||
'--title:Plot title:' \
|
||||
'--autolegend[Label each plot with its data ID]' \
|
||||
'(--3d)--xlen[the size of the x-window to plot]::window size:' \
|
||||
'(--3d)--xlen[the size of the x-window to plot]:window size:' \
|
||||
'(--xlen)--xmin:min X:' \
|
||||
'(--xlen)--xmax:max X:' \
|
||||
'--ymin:min Y:' \
|
||||
@@ -48,7 +48,7 @@ _arguments -S
|
||||
'*--style[Additional styles for a curve]:curve id: :style:' \
|
||||
'(--3d)*--histogram:plot to treat as a histogram:' \
|
||||
'--binwidth:Histogram bin width:' \
|
||||
'--histstyle:Style of histogram:(frequency unique cumulative cnormal)' \
|
||||
'--histstyle:Style of histogram:(frequency fnormal unique cumulative cnormal)' \
|
||||
'--terminal:Terminal options to set with "set terminal":' \
|
||||
'*--legend[Legend for a curve]:curve id: :legend:' \
|
||||
'--exit[Exit gnuplot after making the plot]' \
|
||||
|
Reference in New Issue
Block a user