EPS: infokernel.eps
Script: make-infokernel.tcl
# source the library
source zplot-import.tcl
# define the canvas
PsCanvas -title "infokernel.eps" -width 2in -height 3.4in
set stacks {misc  sim       refresh check}
set colors {black lightgray white   darkgray}
# make two drawables, one for the upper graph, one for the lower
Drawable -drawable lo -xrange "-0.5,3.5" -yrange "0,5" \
    -coord .4in,0.4in -dimensions 1.4in,1.375in
Drawable -drawable hi -xrange "-0.5,3.5" -yrange "96,101" \
    -coord 0.4in,1.775in -dimensions 1.4in,1.375in
# load data and plot the graphs (on both drawables)
for {set i 0} {$i < [llength $stacks]} {incr i} {
    set t [lindex $stacks $i]
    set c [lindex $colors $i]
    Table -table $t -file "infokernel/times.$t" 
    PlotVerticalBars -drawable hi -table $t -xfield c0 -yfield c1 \
	-barwidth 0.7 -yloval 0 -fill t -fillcolor $c -fillstyle solid 
    PlotVerticalBars -drawable lo -table $t -xfield c0 -yfield c1 \
	-barwidth 0.7 -yloval 0 -fill t -fillcolor $c -fillstyle solid \
	-legend [string toupper $t 0 0]
}
# axes (again, one for each drawable)
AxesTicsLabels -drawable lo -xaxisposition 0 -yauto 0,4,2 \
    -xmanual "0,FIFO : 1,LRU : 2,MRU : 3,LFU " \
    -xtitle "Target Replacement Algorithm" \
    -ytitle "Time per Read (us)" -fontsize 8.0 \
    -ytitleshift -5,50 -xtitleshift -5,0
AxesTicsLabels -drawable hi -style y -fontsize 8.0 \
    -title "InfoReplace Overheads" -titleshift 0,5 -yauto 97,101,2
# draw some breaks on the graph
GraphBreak -drawable lo -coord -0.5,5 -elements 6 -linewidth 0.5
GraphBreak -drawable lo -coord    3,5 -elements 8 -linewidth 0.5
# draw a legend
Legend -drawable canvas -coord 65,215 -height 10 -width 10 -fontsize 8.0 -style left
# and finally, render it all
PsRender -file "infokernel.eps"
Data: infokernel/times.$t