mirror of
https://github.com/dkogan/feedgnuplot.git
synced 2025-06-23 22:31:16 +08:00
fixed incorrect plotting of --timefmt --rangesize plots
This commit is contained in:
parent
5db86810b5
commit
a65abc6095
@ -867,7 +867,19 @@ sub updateCurveOptions
|
|||||||
my $usingoptions = '';
|
my $usingoptions = '';
|
||||||
if( $options{timefmt} )
|
if( $options{timefmt} )
|
||||||
{
|
{
|
||||||
$usingoptions = "using 1:" . ($options{timefmt_Ncols}+1);
|
# with --timefmt I need an explicit 'using' specification. I specify the
|
||||||
|
# columns as 1:2:3..... I need the right number of columns (this is given
|
||||||
|
# as 1 + rangesize). I also need to start the range at the first column
|
||||||
|
# past the timefmt
|
||||||
|
|
||||||
|
# I'd like to use //, but I guess some people are still on perl 5.8
|
||||||
|
my $rangesize = exists $options{rangesize_hash}{$id} ?
|
||||||
|
$options{rangesize_hash}{$id} :
|
||||||
|
$options{rangesize_default};
|
||||||
|
|
||||||
|
my @rest = map {$_ + $options{timefmt_Ncols}} (1..$rangesize);
|
||||||
|
|
||||||
|
$usingoptions = "using 1:" . join(':', @rest);
|
||||||
}
|
}
|
||||||
|
|
||||||
$curve->{options} = "$histoptions $usingoptions $titleoption $curve->{extraoptions} $curvestyleall";
|
$curve->{options} = "$histoptions $usingoptions $titleoption $curve->{extraoptions} $curvestyleall";
|
||||||
|
49
t/plots.t
49
t/plots.t
@ -39,7 +39,7 @@ BEGIN {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
use Test::More tests => 56;
|
use Test::More tests => 58;
|
||||||
use File::Temp 'tempfile';
|
use File::Temp 'tempfile';
|
||||||
use IPC::Run 'run';
|
use IPC::Run 'run';
|
||||||
use String::ShellQuote;
|
use String::ShellQuote;
|
||||||
@ -801,6 +801,53 @@ tryplot( testname => '--timefmt plot with --monotonic',
|
|||||||
|
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
tryplot( testname => '--timefmt with custom rangesize',
|
||||||
|
cmd => q{seq 5 | gawk '{print strftime("%d %b %Y %T",1382249107+$1,1),$1,$1/10}'},
|
||||||
|
options => ['--domain', '--timefmt', '%d %b %Y %H:%M:%S',
|
||||||
|
qw(--with errorbars --rangesizeall 2)],
|
||||||
|
refplot => <<'EOF' );
|
||||||
|
|
||||||
|
|
||||||
|
5.5 ++---------+-----------+----------+----------+----------+-----------+----------+---------**
|
||||||
|
+ + + + + + + + *
|
||||||
|
| *
|
||||||
|
5 ++ +A
|
||||||
|
| *
|
||||||
|
| *
|
||||||
|
| *
|
||||||
|
4.5 ++ **
|
||||||
|
| *** |
|
||||||
|
| * |
|
||||||
|
4 ++ A ++
|
||||||
|
| * |
|
||||||
|
| * |
|
||||||
|
| *** |
|
||||||
|
3.5 ++ ++
|
||||||
|
| *** |
|
||||||
|
| * |
|
||||||
|
3 ++ A ++
|
||||||
|
| * |
|
||||||
|
| * |
|
||||||
|
| *** |
|
||||||
|
2.5 ++ ++
|
||||||
|
| |
|
||||||
|
| *** |
|
||||||
|
2 ++ A ++
|
||||||
|
| * |
|
||||||
|
| *** |
|
||||||
|
| |
|
||||||
|
1.5 ++ ++
|
||||||
|
| |
|
||||||
|
| |
|
||||||
|
1 A* ++
|
||||||
|
** |
|
||||||
|
| |
|
||||||
|
+ + + + + + + + +
|
||||||
|
0.5 ++---------+-----------+----------+----------+----------+-----------+----------+---------++
|
||||||
|
05:08 05:08 05:09 05:09 05:10 05:10 05:11 05:11 05:12
|
||||||
|
|
||||||
|
EOF
|
||||||
|
|
||||||
tryplot( testname => 'Error bars (using extraValuesPerPoint)',
|
tryplot( testname => 'Error bars (using extraValuesPerPoint)',
|
||||||
cmd => q{seq 5 | gawk '{print $1,$1,$1/10}'},
|
cmd => q{seq 5 | gawk '{print $1,$1,$1/10}'},
|
||||||
options => [qw(--domain),
|
options => [qw(--domain),
|
||||||
|
Loading…
Reference in New Issue
Block a user