--- trunk/lib/Frey/jQuery/flot.pm 2008/12/17 14:23:35 870 +++ trunk/lib/Frey/jQuery/flot.pm 2008/12/17 17:59:59 871 @@ -36,11 +36,14 @@ #warn $self->dump( $sponge ); my $by_col; + my $unit_by_col; foreach my $row ( @{ $sponge->{rows} } ) { my $x = DateTimeX::Easy->new( $row->[0] )->epoch * 1000; # ms - foreach my $col ( 2 .. 8 ) { - push @{ $by_col->{$col} }, [ $x, $row->[$col] ]; + foreach my $col ( 1 .. $#$row ) { + my $v = $row->[$col]; + $unit_by_col->{$col} = $1 if $v =~ s{([M%])$}{}; + push @{ $by_col->{$col} }, [ $x, $v ]; } } @@ -48,49 +51,53 @@ my @names; foreach my $nr ( keys %$by_col ) { my $name = $sponge->{NAME}->[$nr]; - $dataset->{ $name }->{label} ||= $name; + $dataset->{ $name }->{label} + ||= $name + . ( $unit_by_col->{$nr} ? ' [' . $unit_by_col->{$nr} . ']' : '' ) + ; $dataset->{ $name }->{data} = $by_col->{$nr}; } - my $data_js = 'var datasets = ' . to_json( $dataset ) . ';'; + my $data_js = 'var datasets = ' . to_json( $dataset ) . ";\n"; warn "# $data_js" if $self->debug; - my $c = $self->sar_command; + my $sar = $self->sar_command; + my $c = $sar; $c =~ s{(-n\s*\d+).*}{$1}; my $form = qq|
-
|; my $flags = `atsar help 2>&1`; $flags =~ s{^.+flags:\s+}{}s; foreach my $line ( split(/\s*\n\s*/, $flags ) ) { - my ( $flag, $desc ) = split(/\s+/, $line ); + my ( $flag, $desc ) = split(/\s+/, $line, 2 ); warn "# $flag | $desc"; my $v = "$c $flag"; - my $selected = ''; - $selected = " selected" if $v eq $self->sar_command; - $form .= qq||; + my $checked = ''; + $checked = " checked" if $v eq $self->sar_command; + $form .= qq|$desc
\n|; } $form .= qq| - -
|; $self->add_css(q| - #choices { float: right } + #choices, form { float: left; } |); qq| +
-
Show $form
+
$sar -
+ $form +
Show
| . q|