summaryrefslogtreecommitdiffstats
path: root/ds9/library/plot.tcl
diff options
context:
space:
mode:
Diffstat (limited to 'ds9/library/plot.tcl')
-rw-r--r--ds9/library/plot.tcl249
1 files changed, 116 insertions, 133 deletions
diff --git a/ds9/library/plot.tcl b/ds9/library/plot.tcl
index 134a52d..37620ab 100644
--- a/ds9/library/plot.tcl
+++ b/ds9/library/plot.tcl
@@ -78,7 +78,8 @@ proc PlotLayoutCanvas {varname} {
}
switch $var(layout) {
- column {
+ column -
+ strip {
set ww 1
set ii 0
grid columnconfigure $var(top) 0 -weight 1
@@ -408,19 +409,22 @@ proc PlotChangeAxis {varname} {
upvar #0 $varname var
global $varname
- if {$var(layout,lock)} {
- PlotUpdateCanvas $varname
- set cc $var(graph,current)
- foreach gg $var(graphs) {
- set var(graph,current) $gg
- PlotRestoreState $varname
+ switch $var(layout) {
+ grid -
+ column -
+ row {PlotUpdateGraph $varname}
+ strip {
+ PlotUpdateCanvas $varname
+ set cc $var(graph,current)
+ foreach gg $var(graphs) {
+ set var(graph,current) $gg
+ PlotRestoreState $varname
- PlotUpdateGraph $varname
+ PlotUpdateGraph $varname
+ }
+ set var(graph,current) $cc
+ PlotRestoreState $varname
}
- set var(graph,current) $cc
- PlotRestoreState $varname
- } else {
- PlotUpdateGraph $varname
}
}
@@ -614,60 +618,65 @@ proc PlotUpdateCanvas {varname} {
set first [lindex $var(graphs) 0]
set last [lindex $var(graphs) end]
- if {$var(layout,lock)} {
- set legendpos plotarea
-
- if {$var($first,axis,x,auto)} {
- if {[info exists ${varname}($first,1,xdata)]} {
- set xmin [blt::vector expr min($var($first,1,xdata))]
- set xmax [blt::vector expr max($var($first,1,xdata))]
+ switch $var(layout) {
+ grid -
+ row -
+ column {
+ set legendpos $var(legend,position)
+
+ set var(layout,axis,x,grid) 1
+ set var(layout,axis,x,log) 0
+ set var(layout,axis,x,flip) 0
+ set var(layout,axis,x,min) 0
+ set var(layout,axis,x,max) 1
+
+ set var(layout,axis,y,grid) 1
+ set var(layout,axis,y,log) 0
+ set var(layout,axis,y,flip) 0
+ set var(layout,axis,y,min) 0
+ set var(layout,axis,y,max) 1
+ }
+ strip {
+ set legendpos plotarea
+
+ if {$var($first,axis,x,auto)} {
+ if {[info exists ${varname}($first,1,xdata)]} {
+ set xmin [blt::vector expr min($var($first,1,xdata))]
+ set xmax [blt::vector expr max($var($first,1,xdata))]
+ } else {
+ set xmin 0
+ set xmax 1
+ }
} else {
- set xmin 0
- set xmax 1
+ set xmin $var($first,axis,x,min)
+ set xmax $var($first,axis,x,max)
}
- } else {
- set xmin $var($first,axis,x,min)
- set xmax $var($first,axis,x,max)
- }
- if {$var($first,axis,y,auto)} {
- if {[info exists ${varname}($first,1,ydata)]} {
- set ymin [blt::vector expr min($var($first,1,ydata))]
- set ymax [blt::vector expr max($var($first,1,ydata))]
+ if {$var($first,axis,y,auto)} {
+ if {[info exists ${varname}($first,1,ydata)]} {
+ set ymin [blt::vector expr min($var($first,1,ydata))]
+ set ymax [blt::vector expr max($var($first,1,ydata))]
+ } else {
+ set ymin 0
+ set ymax 1
+ }
} else {
- set ymin 0
- set ymax 1
+ set ymin $var($first,axis,y,min)
+ set ymax $var($first,axis,y,max)
}
- } else {
- set ymin $var($first,axis,y,min)
- set ymax $var($first,axis,y,max)
- }
- set var(layout,axis,x,grid) $var($first,axis,x,grid)
- set var(layout,axis,x,log) $var($first,axis,x,log)
- set var(layout,axis,x,flip) $var($first,axis,x,flip)
- set var(layout,axis,x,min) $xmin
- set var(layout,axis,x,max) $xmax
-
- set var(layout,axis,y,grid) $var($first,axis,y,grid)
- set var(layout,axis,y,log) $var($first,axis,y,log)
- set var(layout,axis,y,flip) $var($first,axis,y,flip)
- set var(layout,axis,y,min) $ymin
- set var(layout,axis,y,max) $ymax
- } else {
- set legendpos $var(legend,position)
-
- set var(layout,axis,x,grid) 1
- set var(layout,axis,x,log) 0
- set var(layout,axis,x,flip) 0
- set var(layout,axis,x,min) 0
- set var(layout,axis,x,max) 1
-
- set var(layout,axis,y,grid) 1
- set var(layout,axis,y,log) 0
- set var(layout,axis,y,flip) 0
- set var(layout,axis,y,min) 0
- set var(layout,axis,y,max) 1
+ set var(layout,axis,x,grid) $var($first,axis,x,grid)
+ set var(layout,axis,x,log) $var($first,axis,x,log)
+ set var(layout,axis,x,flip) $var($first,axis,x,flip)
+ set var(layout,axis,x,min) $xmin
+ set var(layout,axis,x,max) $xmax
+
+ set var(layout,axis,y,grid) $var($first,axis,y,grid)
+ set var(layout,axis,y,log) $var($first,axis,y,log)
+ set var(layout,axis,y,flip) $var($first,axis,y,flip)
+ set var(layout,axis,y,min) $ymin
+ set var(layout,axis,y,max) $ymax
+ }
}
foreach cc $var(graphs) {
@@ -701,84 +710,58 @@ proc PlotUpdateCanvas {varname} {
set var($cc,axis,x,manage) 1
set var($cc,axis,y,manage) 1
- if {$var(layout,lock) && $var(layout) != {grid}} {
- if {$cc != $first} {
- switch $var(layout) {
- row {
- set var($cc,axis,x,manage) 1
- set var($cc,axis,y,manage) 0
- }
- column {
- set var($cc,axis,x,manage) 0
- set var($cc,axis,y,manage) 1
- }
- }
+ switch $var(layout) {
+ grid -
+ row -
+ column {
+ $var($cc,graph) configure -plotpadx 0 -plotpady 0 \
+ -topmargin 0 -bottommargin 0 -leftmargin 0 -rightmargin 0
+
+ $var($cc,graph) xaxis configure -exterior 1 -showticks 1
+ $var($cc,graph) yaxis configure -exterior 1 -showticks 1
+
+ $var($cc,graph) x2axis configure -hide yes
+ $var($cc,graph) y2axis configure -hide yes
}
+ strip {
+ if {$cc != $first} {
+ set var($cc,axis,x,manage) 0
+ set var($cc,axis,y,manage) 1
+ }
- $var($cc,graph) xaxis configure -exterior 0
- $var($cc,graph) yaxis configure -exterior 0
-
- $var($cc,graph) x2axis configure -hide no -grid no -exterior 0 \
- -bg $var(background)
- $var($cc,graph) y2axis configure -hide no -grid no -exterior 0 \
- -bg $var(background)
-
- switch $var(layout) {
- column {
- set left [expr 50 + $var(axis,title,size)]
- set right 10
-
- $var($cc,graph) configure -leftmargin $left \
- -rightmargin $right
-
- if {$cc == $first} {
- $var($cc,graph) configure -topmargin 0 -bottommargin 1
- } elseif {$cc == $last} {
- $var($cc,graph) configure -topmargin 1 -bottommargin 0
- } else {
- $var($cc,graph) configure -topmargin 1 -bottommargin 1
- }
-
- if {$cc != $last} {
- $var($cc,graph) xaxis configure -showticks 0
- $var($cc,graph) x2axis configure -showticks 0
- $var($cc,graph) yaxis configure -showticks 1
- $var($cc,graph) y2axis configure -showticks 0
- } else {
- $var($cc,graph) xaxis configure -showticks 1
- $var($cc,graph) x2axis configure -showticks 0
- $var($cc,graph) yaxis configure -showticks 1
- $var($cc,graph) y2axis configure -showticks 0
- }
+ $var($cc,graph) xaxis configure -exterior 0
+ $var($cc,graph) yaxis configure -exterior 0
+
+ $var($cc,graph) x2axis configure -hide no -grid no -exterior 0 \
+ -bg $var(background)
+ $var($cc,graph) y2axis configure -hide no -grid no -exterior 0 \
+ -bg $var(background)
+
+ set left [expr 50 + $var(axis,title,size)]
+ set right 10
+
+ $var($cc,graph) configure -leftmargin $left -rightmargin $right
+
+ if {$cc == $first} {
+ $var($cc,graph) configure -topmargin 0 -bottommargin 1
+ } elseif {$cc == $last} {
+ $var($cc,graph) configure -topmargin 1 -bottommargin 0
+ } else {
+ $var($cc,graph) configure -topmargin 1 -bottommargin 1
}
- row {
- if {$cc == $first} {
- $var($cc,graph) configure -leftmargin 0 -rightmargin 1
- } else {
- $var($cc,graph) configure -leftmargin 1 -rightmargin 1
- }
- if {$cc == $first} {
- $var($cc,graph) xaxis configure -showticks 1
- $var($cc,graph) x2axis configure -showticks 0
- $var($cc,graph) yaxis configure -showticks 1
- $var($cc,graph) y2axis configure -showticks 0
- } else {
- $var($cc,graph) xaxis configure -showticks 1
- $var($cc,graph) x2axis configure -showticks 0
- $var($cc,graph) yaxis configure -showticks 0
- $var($cc,graph) y2axis configure -showticks 0
- }
+
+ if {$cc != $last} {
+ $var($cc,graph) xaxis configure -showticks 0
+ $var($cc,graph) x2axis configure -showticks 0
+ $var($cc,graph) yaxis configure -showticks 1
+ $var($cc,graph) y2axis configure -showticks 0
+ } else {
+ $var($cc,graph) xaxis configure -showticks 1
+ $var($cc,graph) x2axis configure -showticks 0
+ $var($cc,graph) yaxis configure -showticks 1
+ $var($cc,graph) y2axis configure -showticks 0
}
}
- } else {
- $var($cc,graph) configure -plotpadx 0 -plotpady 0 \
- -topmargin 0 -bottommargin 0 -leftmargin 0 -rightmargin 0
-
- $var($cc,graph) xaxis configure -exterior 1 -showticks 1
- $var($cc,graph) yaxis configure -exterior 1 -showticks 1
-
- $var($cc,graph) x2axis configure -hide yes
- $var($cc,graph) y2axis configure -hide yes
}
}
}