/usr/share/blt2.4/demos/barchart5.tcl is in blt-demo 2.4z-4.2.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 | #!/usr/bin/wish
package require BLT
# --------------------------------------------------------------------------
# Starting with Tcl 8.x, the BLT commands are stored in their own
# namespace called "blt". The idea is to prevent name clashes with
# Tcl commands and variables from other packages, such as a "table"
# command in two different packages.
#
# You can access the BLT commands in a couple of ways. You can prefix
# all the BLT commands with the namespace qualifier "blt::"
#
# blt::graph .g
# blt::table . .g -resize both
#
# or you can import all the command into the global namespace.
#
# namespace import blt::*
# graph .g
# table . .g -resize both
#
# --------------------------------------------------------------------------
if { $tcl_version >= 8.0 } {
namespace import blt::*
namespace import -force blt::tile::*
}
source scripts/demo.tcl
source scripts/stipples.tcl
option add *graph.x.Title "X Axis Label"
option add *graph.y.Title "Y Axis Label"
option add *graph.title "A Simple Barchart"
option add *graph.x.Font { Times 10 }
option add *graph.Element.Relief raised
set visual [winfo screenvisual .]
if { $visual != "staticgray" && $visual != "grayscale" } {
option add *graph.LineMarker.color yellow
option add *graph.Element.Background white
option add *graph.Legend.activeForeground pink
option add *print.background yellow
option add *quit.background red
option add *graph.background palegreen
option add *graph.plotBackground lightblue
}
htext .htext -text \
{ This is an example of the barchart widget. The barchart has
many components; x and y axis, legend, crosshairs, elements, etc.
To create a postscript file "bar.ps", press the %%
set w $htext(widget)
button $w.print -text {Print} -command {
$graph postscript output bar.ps
}
$w append $w.print
%% button.
%%
set graph [barchart .htext.graph]
$graph configure \
-relief raised \
-bd 2
$graph xaxis configure \
-rotate 90 \
-stepsize 0
$w append $graph -fill both -padx 4
%%
Hit the %%
button $w.quit -text quit -command exit
$w append $w.quit
%% button when you've seen enough.%%
label $w.logo -bitmap BLT
$w append $w.logo -padx 20
%% }
set names { One Two Three Four Five Six Seven Eight }
if { $visual == "staticgray" || $visual == "grayscale" } {
set fgcolors { white white white white white white white white }
set bgcolors { black black black black black black black black }
} else {
set fgcolors { yellow orange red magenta purple blue cyan green }
set bgcolors { yellow4 orange4 red4 magenta4 purple4 blue4 cyan4 green4 }
}
set numColors [llength $names]
set tcl_precision 15
vector create x
vector create y
x seq -5.0 5.0 0.2
y expr sin(x)
set barWidth 0.19
$graph element create sin -relief raised -bd 1 -x x -y y -barwidth $barWidth
table . .htext -fill both
wm min . 0 0
Blt_ZoomStack $graph
Blt_Crosshairs $graph
Blt_ActiveLegend $graph
Blt_ClosestPoint $graph
|