Diff for /loncom/xml/lonplot.pm between versions 1.100 and 1.103

version 1.100, 2004/08/17 17:37:56 version 1.103, 2004/09/13 13:34:06
Line 119  my $words_test     = sub {$_[0]=~s/\s+/ Line 119  my $words_test     = sub {$_[0]=~s/\s+/
 ###################################################################  ###################################################################
 my @gnuplot_edit_order =   my @gnuplot_edit_order = 
     qw/alttag bgcolor fgcolor height width font transparent grid samples       qw/alttag bgcolor fgcolor height width font transparent grid samples 
     border align texwidth texfont plottype/;      border align texwidth texfont plottype lmargin rmargin tmargin bmargin 
       major_ticscale minor_ticscale/;
   
   my $margin_choices = ['default',
                         qw{0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20}];
   
 my %gnuplot_defaults =   my %gnuplot_defaults = 
     (      (
Line 218  my %gnuplot_defaults = Line 222  my %gnuplot_defaults =
  edit_type   => 'choice',   edit_type   => 'choice',
          choices     => ['Cartesian','Polar']           choices     => ['Cartesian','Polar']
          },           },
        lmargin   => {
    default     => 'default',
    test        => sub {$_[0]=~/^(default|\d+)$/},
    description => 'Left margin width (pts):',
    edit_type   => 'choice',
            choices     => $margin_choices,
            },
        rmargin   => {
    default     => 'default',
    test        => sub {$_[0]=~/^(default|\d+)$/},
    description => 'Right margin width (pts):',
    edit_type   => 'choice',
            choices     => $margin_choices,
            },
        tmargin   => {
    default     => 'default',
    test        => sub {$_[0]=~/^(default|\d+)$/},
    description => 'Top margin width (pts):',
    edit_type   => 'choice',
            choices     => $margin_choices,
            },
        bmargin   => {
    default     => 'default',
    test        => sub {$_[0]=~/^(default|\d+)$/},
    description => 'Bottm margin width (pts):',
    edit_type   => 'choice',
            choices     => $margin_choices,
            },
        major_ticscale  => {
            default     => '1',
            test        => $real_test,
            description => 'Size of major tic marks (plot coordinates)',
            edit_type   => 'entry',
            size        => '5'
            },
        minor_ticscale  => {
            default     => '0.5',
            test        => $real_test,
            description => 'Size of minor tic mark (plot coordinates)',
            edit_type   => 'entry',
            size        => '5'
            },
      );       );
   
 my %key_defaults =   my %key_defaults = 
Line 984  sub write_gnuplot_file { Line 1030  sub write_gnuplot_file {
     }      }
     # set term      # set term
     if ($target eq 'web') {      if ($target eq 'web') {
  $gnuplot_input .= 'set term gif ';   $gnuplot_input .= 'set term '.$weboutputformat .' ';
  $gnuplot_input .= 'transparent ' if ($plot{'transparent'} eq 'on');   $gnuplot_input .= 'transparent ' if ($plot{'transparent'} eq 'on');
  $gnuplot_input .= $plot{'font'} . ' ';   $gnuplot_input .= $plot{'font'} . ' ';
  $gnuplot_input .= 'size '.$plot{'width'}.','.$plot{'height'}.' ';   $gnuplot_input .= 'size '.$plot{'width'}.','.$plot{'height'}.' ';
Line 1002  sub write_gnuplot_file { Line 1048  sub write_gnuplot_file {
     } else {      } else {
         # Assume Cartesian          # Assume Cartesian
     }      }
       # margin
       if (lc($plot{'lmargin'}) ne 'default') {
           $gnuplot_input .= 'set lmargin '.$plot{'lmargin'}.$/;
       }
       if (lc($plot{'rmargin'}) ne 'default') {
           $gnuplot_input .= 'set rmargin '.$plot{'rmargin'}.$/;
       }
       if (lc($plot{'tmargin'}) ne 'default') {
           $gnuplot_input .= 'set tmargin '.$plot{'tmargin'}.$/;
       }
       if (lc($plot{'bmargin'}) ne 'default') {
           $gnuplot_input .= 'set bmargin '.$plot{'bmargin'}.$/;
       }
       # tic scales
       $gnuplot_input .= 'set ticscale '.
           $plot{'major_ticscale'}.' '.$plot{'minor_ticscale'}.$/;
     # grid      # grid
     $gnuplot_input .= 'set grid'.$/ if ($plot{'grid'} eq 'on');      $gnuplot_input .= 'set grid'.$/ if ($plot{'grid'} eq 'on');
     # border      # border
Line 1061  sub write_gnuplot_file { Line 1123  sub write_gnuplot_file {
     my $label;      my $label;
     foreach $label (@labels) {      foreach $label (@labels) {
  $gnuplot_input .= 'set label "'.$label->{'text'}.'" at '.   $gnuplot_input .= 'set label "'.$label->{'text'}.'" at '.
     $label->{'xpos'}.','.$label->{'ypos'}.' '.$label->{'justify'}.' font "Helvetica,'.$pt.'pt"'.$/ ;      $label->{'xpos'}.','.$label->{'ypos'}.' '.$label->{'justify'};
           if ($target eq 'tex') {
               $gnuplot_input .=' font "Helvetica,'.$pt.'pt"' ;
           }
           $gnuplot_input .= $/;
     }      }
     if ($target eq 'tex') {      if ($target eq 'tex') {
         $gnuplot_input .="set size 1,".$plot{'height'}/$plot{'width'}*1.38;          $gnuplot_input .="set size 1,".$plot{'height'}/$plot{'width'}*1.38;
Line 1172  sub edit_attributes { Line 1238  sub edit_attributes {
  ($description,$attr,$token,   ($description,$attr,$token,
  $defaults->{$attr}->{'size'});   $defaults->{$attr}->{'size'});
  } elsif ($defaults->{$attr}->{'edit_type'} eq 'choice') {   } elsif ($defaults->{$attr}->{'edit_type'} eq 'choice') {
     $result .= &Apache::edit::select_arg      $result .= &Apache::edit::select_or_text_arg
  ($description,$attr,$defaults->{$attr}->{'choices'},$token);   ($description,$attr,$defaults->{$attr}->{'choices'},$token);
  } elsif ($defaults->{$attr}->{'edit_type'} eq 'onoff') {   } elsif ($defaults->{$attr}->{'edit_type'} eq 'onoff') {
     $result .= &Apache::edit::select_arg      $result .= &Apache::edit::select_or_text_arg
  ($description,$attr,['on','off'],$token);   ($description,$attr,['on','off'],$token);
  }   }
  $result .= '<br />';   $result .= '<br />';

Removed from v.1.100  
changed lines
  Added in v.1.103


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