Diff for /loncom/xml/lonplot.pm between versions 1.180 and 1.182

version 1.180, 2018/09/26 15:24:46 version 1.182, 2019/05/08 12:24:27
Line 42  use Apache::lonnet; Line 42  use Apache::lonnet;
 use LONCAPA;  use LONCAPA;
     
   
 use vars qw/$weboutputformat $version/;  use vars qw/$weboutputformat $version $colorprefix/;
   
   
   
Line 56  BEGIN { Line 56  BEGIN {
     if ($version >= 4) {      if ($version >= 4) {
         $weboutputformat = 'png';          $weboutputformat = 'png';
     }      }
           $colorprefix = 'x'; 
       if ($version > 4.6) {
           $colorprefix = '#';
       }
 }  }
   
   
Line 186  my %gnuplot_defaults = Line 189  my %gnuplot_defaults =
  size        => '10'   size        => '10'
  },   },
      bgcolor      => {       bgcolor      => {
  default     => 'xffffff',   default     => $colorprefix.'ffffff',
  test        => $color_test,    test        => $color_test,
  description => 'Background color of image (xffffff)',   description => 'Background color of image ('.$colorprefix.'ffffff)',
  edit_type   => 'entry',   edit_type   => 'entry',
  size        => '10',   size        => '10',
          class       => 'colorchooser'           class       => 'colorchooser'
  },   },
      fgcolor      => {       fgcolor      => {
  default     => 'x000000',   default     => $colorprefix.'000000',
  test        => $color_test,   test        => $color_test,
  description => 'Foreground color of image (x000000)',   description => 'Foreground color of image ('.$colorprefix.'000000)',
  edit_type   => 'entry',   edit_type   => 'entry',
  size        => '10',   size        => '10',
          class       => 'colorchooser'           class       => 'colorchooser'
Line 367  my %gnuplot_defaults = Line 370  my %gnuplot_defaults =
          },           },
      );       );
   
   
 my %key_defaults =   my %key_defaults = 
     (      (
      title => {        title => { 
Line 488  my @axis_edit_order = ('color','xmin','x Line 492  my @axis_edit_order = ('color','xmin','x
 my %axis_defaults =   my %axis_defaults = 
     (      (
      color   => {       color   => {
  default => 'x000000',    default => $colorprefix.'000000', 
  test => $color_test,   test => $color_test,
  description => 'Color of grid lines (x000000)',   description => 'Color of grid lines ('.$colorprefix.'000000)',
  edit_type   => 'entry',   edit_type   => 'entry',
  size        => '10',   size        => '10',
          class       => 'colorchooser'           class       => 'colorchooser'
Line 564  my @curve_edit_order = ('color','name',' Line 568  my @curve_edit_order = ('color','name','
 my %curve_defaults =   my %curve_defaults = 
     (      (
      color     => {       color     => {
  default => 'x000000',   default => $colorprefix.'000000',
  test => $color_test,   test => $color_test,
  description => 'Color of curve (x000000)',   description => 'Color of curve ('.$colorprefix.'000000)',
  edit_type   => 'entry',   edit_type   => 'entry',
  size        => '10',   size        => '10',
  class       => 'colorchooser'   class       => 'colorchooser'
Line 697  sub start_gnuplot { Line 701  sub start_gnuplot {
   
  if ($constructtag) {   if ($constructtag) {
     #      #
     # The color chooser does not prepent x to the color values      # Color chooser does not prepend x (or #) to the color values
     # Do that here:      # Do that here:
     #      #
     foreach my $attribute ('bgcolor', 'fgcolor') {      foreach my $attribute ('bgcolor', 'fgcolor') {
  my $value = $token->[2]{$attribute};   my $value = $token->[2]{$attribute};
  if (defined $value && !($value =~ /^x/)) {   if (defined $value && ($value !~ /^\Q$colorprefix\E/)) {
     $token->[2]{$attribute} = 'x' . $value;      $token->[2]{$attribute} = $colorprefix . $value;
  }   }
     }      }
     $result = &Apache::edit::rebuild_tag($token);      $result = &Apache::edit::rebuild_tag($token);
Line 1497  sub start_curve { Line 1501  sub start_curve {
     ($token,$parstack,$safeeval,keys(%curve_defaults));      ($token,$parstack,$safeeval,keys(%curve_defaults));
  if ($constructtag) {   if ($constructtag) {
     #      #
     # Fix up the color attribute as jcolor does not prepend an x      # Fix up the color attribute as jcolor does not prepend an x 
       # (or #)
     #      #
     my $value = $token->[2]{'color'};      my $value = $token->[2]{'color'};
     if (defined $value && !($value =~ /^x/)) {      if (defined $value && ($value !~ /^\Q$colorprefix\E/)) {
  $token->[2]{'color'} = 'x' . $value;   $token->[2]{'color'} = $colorprefix . $value;
     }      }
     $result = &Apache::edit::rebuild_tag($token);      $result = &Apache::edit::rebuild_tag($token);
  }   }
Line 1655  sub start_axis { Line 1660  sub start_axis {
  if ($constructtag) {   if ($constructtag) {
     #      #
     #  Fix up the color attribute since jchooser does not      #  Fix up the color attribute since jchooser does not
     #  prepend an x to the color:      #  prepend an x (or #) to the color:
     #      #
     my $value = $token->[2]{'color'};      my $value = $token->[2]{'color'};
     if (defined $value && !($value =~ /^x/)) {      if (defined $value && ($value !~ /^\Q$colorprefix\E/)) {
  $token->[2]{'color'} = 'x' . $value;   $token->[2]{'color'} = $colorprefix . $value;
     }      }
   
     $result = &Apache::edit::rebuild_tag($token);      $result = &Apache::edit::rebuild_tag($token);
Line 1822  sub write_gnuplot_file { Line 1827  sub write_gnuplot_file {
     '/'.$font_properties->{'file'}.'.ttf" ';      '/'.$font_properties->{'file'}.'.ttf" ';
  $gnuplot_input .= $fontsize;   $gnuplot_input .= $fontsize;
  $gnuplot_input .= ' size '.$Apache::lonplot::plot{'width'}.','.$Apache::lonplot::plot{'height'}.' ';   $gnuplot_input .= ' size '.$Apache::lonplot::plot{'width'}.','.$Apache::lonplot::plot{'height'}.' ';
  $gnuplot_input .= "@Colors\n";   if ($version > 4.6) {
       if ($Apache::lonplot::plot{'bgcolor'}) {
           $gnuplot_input .= "background '$Apache::lonplot::plot{'bgcolor'}'\n";
       }
    } else {
       $gnuplot_input .= "@Colors\n";
    }
  # set output   # set output
  $gnuplot_input .= "set output\n";   $gnuplot_input .= "set output\n";
     } elsif ($target eq 'tex') {      } elsif ($target eq 'tex') {
Line 1898  sub write_gnuplot_file { Line 1909  sub write_gnuplot_file {
  if ($Apache::lonplot::plot{'gridlayer'} eq 'on');   if ($Apache::lonplot::plot{'gridlayer'} eq 'on');
   
     # grid      # grid
     $gnuplot_input .= 'set grid'.$/ if ($Apache::lonplot::plot{'grid'} eq 'on');      if (($version > 4.6) && ($Apache::lonplot::plot{'fgcolor'} ne '')) {
           $gnuplot_input .= 'set grid linecolor "'.$Apache::lonplot::plot{'fgcolor'}.'"'.$/
                             if ($Apache::lonplot::plot{'grid'} eq 'on');
       } else {
           $gnuplot_input .= 'set grid'.$/ if ($Apache::lonplot::plot{'grid'} eq 'on');
       }   
     # border      # border
     $gnuplot_input .= ($Apache::lonplot::plot{'border'} eq 'on'?      if ($Apache::lonplot::plot{'border'} eq 'on') {
        'set border'.$/           :          if (($version > 4.6) && (($axis{'color'} ne '') || ($Apache::lonplot::plot{'fgcolor'} ne ''))) {
        'set noborder'.$/         );              $gnuplot_input .= 'set border linecolor "'.
                                 (($axis{'color'} ne '')?$axis{'color'}:
                                                         $Apache::lonplot::plot{'fgcolor'}).
                                 '" '.$/;
           } else {
               $gnuplot_input .= 'set border '.$/;
           }
       } else {
           $gnuplot_input .= 'set noborder '.$/;
       }
     # sampling rate for non-data curves      # sampling rate for non-data curves
     $gnuplot_input .= "set samples $Apache::lonplot::plot{'samples'}\n";      $gnuplot_input .= "set samples $Apache::lonplot::plot{'samples'}\n";
     # title, xlabel, ylabel      # title, xlabel, ylabel

Removed from v.1.180  
changed lines
  Added in v.1.182


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>