diff options
author | William Joye <wjoye@cfa.harvard.edu> | 2019-01-07 20:18:49 (GMT) |
---|---|---|
committer | William Joye <wjoye@cfa.harvard.edu> | 2019-01-07 20:18:49 (GMT) |
commit | 99617a9a6ab0ac0cbce628dbe35a979580a4fdef (patch) | |
tree | a243a9f15d2caa4fec35d53b988746c18c5db6c7 /tkblt/doc/graph.html | |
parent | e1f700df25c677f44a7c7f3a2ad497ecf3a9e38b (diff) | |
download | blt-99617a9a6ab0ac0cbce628dbe35a979580a4fdef.zip blt-99617a9a6ab0ac0cbce628dbe35a979580a4fdef.tar.gz blt-99617a9a6ab0ac0cbce628dbe35a979580a4fdef.tar.bz2 |
update TEA 3.13
Diffstat (limited to 'tkblt/doc/graph.html')
-rw-r--r-- | tkblt/doc/graph.html | 1759 |
1 files changed, 0 insertions, 1759 deletions
diff --git a/tkblt/doc/graph.html b/tkblt/doc/graph.html deleted file mode 100644 index 70f1e6f..0000000 --- a/tkblt/doc/graph.html +++ /dev/null @@ -1,1759 +0,0 @@ -<HTML> -<BODY> -<PRE> -<!-- Manpage converted by man2html 3.0.1 --> - -</PRE> -<H2>SYNOPSIS</H2><PRE> - <B>graph</B> <I>pathName</I> ?<I>option</I> <I>value</I>?... - - -</PRE> -<H2>DESCRIPTION</H2><PRE> - The <B>graph</B> command creates a graph for plotting two-dimensional data - (X-Y coordinates). It has many configurable components: coordinate - axes, elements, legend, grid lines, cross hairs, etc. They allow you - to customize the look and feel of the graph. - - -</PRE> -<H2>INTRODUCTION</H2><PRE> - The <B>graph</B> command creates a new window for plotting two-dimensional - data (X-Y coordinates). Data points are plotted in a rectangular area - displayed in the center of the new window. This is the <I>plotting</I> <I>area</I>. - The coordinate axes are drawn in the margins around the plotting area. - By default, the legend is displayed in the right margin. The title is - displayed in top margin. - - The <B>graph</B> widget is composed of several components: coordinate axes, - data elements, legend, grid, cross hairs, pens, postscript, and annota- - tion markers. - - axis The graph has four standard axes (x, x2, y, and y2), but you - can create and display any number of axes. Axes control what - region of data is displayed and how the data is scaled. Each - axis consists of the axis line, title, major and minor ticks, - and tick labels. Tick labels display the value at each major - tick. - - crosshairs - Cross hairs are used to position the mouse pointer relative - to the X and Y coordinate axes. Two perpendicular lines, - intersecting at the current location of the mouse, extend - across the plotting area to the coordinate axes. - - element An element represents a set of data points. Elements can be - plotted with a symbol at each data point and lines connecting - the points. The appearance of the element, such as its sym- - bol, line width, and color is configurable. - - grid Extends the major and minor ticks of the X-axis and/or Y-axis - across the plotting area. - - legend The legend displays the name and symbol of each data element. - The legend can be drawn in any margin or in the plotting - area. - - marker Markers are used annotate or highlight areas of the graph. - For example, you could use a polygon marker to fill an area - under a curve, or a text marker to label a particular data - point. Markers come in various forms: text strings, bitmaps, - connected line segments, images, polygons, or embedded wid- - gets. - - <B>graph</B> <I>pathName</I> ?<I>option</I> <I>value</I>?... The <B>graph</B> command creates a new win- - dow <I>pathName</I> and makes it into a <B>graph</B> widget. At the time this com- - mand is invoked, there must not exist a window named <I>pathName</I>, but - <I>pathName</I>'s parent must exist. Additional options may be specified on - the command line or in the option database to configure aspects of the - graph such as its colors and font. See the <B>configure</B> operation below - for the exact details about what <I>option</I> and <I>value</I> pairs are valid. - - If successful, <B>graph</B> returns the path name of the widget. It also cre- - ates a new Tcl command by the same name. You can use this command to - invoke various operations that query or modify the graph. The general - form is: <I>pathName</I> <I>operation</I> ?<I>arg</I>?... Both <I>operation</I> and its arguments - determine the exact behavior of the command. The operations available - for the graph are described in the <B>GRAPH</B> <B>OPERATIONS</B> section. - - The command can also be used to access components of the graph. <I>path-</I> - <I>Name</I> <I>component</I> <I>operation</I> ?<I>arg</I>?... The operation, now located after the - name of the component, is the function to be performed on that compo- - nent. Each component has its own set of operations that manipulate that - component. They will be described below in their own sections. - - -</PRE> -<H2>EXAMPLE</H2><PRE> - The <B>graph</B> command creates a new graph. # Create a new graph. Plotting - area is black. graph .g -plotbackground black A new Tcl command .g is - also created. This command can be used to query and modify the graph. - For example, to change the title of the graph to "My Plot", you use the - new command and the graph's <B>configure</B> operation. # Change the title. - .g configure -title "My Plot" A graph has several components. To access - a particular component you use the component's name. For example, to - add data elements, you use the new command and the <B>element</B> component. - # Create a new element named "line1" .g element create line1 \ - -xdata { 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0 } \ -ydata { - 26.18 50.46 72.85 93.31 111.86 128.47 143.14 155.85 166.60 - 175.38 } The element's X-Y coordinates are specified using lists of - numbers. Alternately, BLT vectors could be used to hold the X-Y coor- - dinates. # Create two vectors and add them to the graph. vector xVec - yVec xVec set { 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0 } yVec set { - 26.18 50.46 72.85 93.31 111.86 128.47 143.14 155.85 166.60 175.38 - } .g element create line1 -xdata xVec -ydata yVec The advantage of - using vectors is that when you modify one, the graph is automatically - redrawn to reflect the new values. # Change the y coordinate of the - first point. set <B>yVector(0)</B> 25.18 An element named e1 is now created - in .b. It is automatically added to the display list of elements. You - can use this list to control in what order elements are displayed. To - query or reset the element display list, you use the element's <B>show</B> - operation. # Get the current display list set elemList [.b element - show] # Remove the first element so it won't be displayed. .b element - show [lrange $elemList 0 end] The element will be displayed by as many - bars as there are data points (in this case there are ten). The bars - will be drawn centered at the x-coordinate of the data point. All the - bars will have the same attributes (colors, stipple, etc). The width - of each bar is by default one unit. You can change this with using the - example, you change the scale of the Y-axis from linear to log using - the <B>axis</B> component. # Y-axis is log scale. .g axis configure y - -logscale yes One important way axes are used is to zoom in on a par- - ticular data region. Zooming is done by simply specifying new axis - limits using the <B>-min</B> and <B>-max</B> configuration options. .g axis config- - ure x -min 1.0 -max 1.5 .g axis configure y -min 12.0 -max 55.15 To - zoom interactively, you link the <B>axis</B> <B>configure</B> operations with some - user interaction (such as pressing the mouse button), using the <B>bind</B> - command. To convert between screen and graph coordinates, use the - <B>invtransform</B> operation. # Click the button to set a new minimum bind - .g <ButtonPress-1> { - %W axis configure x -min [%W axis invtransform x %x] - %W axis configure x -min [%W axis invtransform x %y] } By default, - the limits of the axis are determined from data values. To reset back - to the default limits, set the <B>-min</B> and <B>-max</B> options to the empty - value. # Reset the axes to autoscale again. .g axis configure x -min - {} -max {} .g axis configure y -min {} -max {} By default, the legend - is drawn in the right margin. You can change this or any legend con- - figuration options using the <B>legend</B> component. # Configure the legend - font, color, and relief .g legend configure -position left -relief - raised \ -font fixed -fg blue To prevent the legend from being - displayed, turn on the <B>-hide</B> option. # Don't display the legend. .g - legend configure -hide yes The <B>graph</B> widget has simple drawing proce- - dures called markers. They can be used to highlight or annotate data - in the graph. The types of markers available are bitmaps, images, poly- - gons, lines, or windows. Markers can be used, for example, to mark or - brush points. In this example, is a text marker that labels the data - first point. Markers are created using the <B>marker</B> component. # Create - a label for the first data point of "line1". .g marker create text - -name first_marker -coords { 0.2 26.18 } \ -text "start" -anchor - se -xoffset -10 -yoffset -10 This creates a text marker named - first_marker. It will display the text "start" near the coordinates of - the first data point. The <B>-anchor</B>, <B>-xoffset</B>, and <B>-yoffset</B> options are - used to display the marker above and to the left of the data point, so - that the data point isn't covered by the marker. By default, markers - are drawn last, on top of data. You can change this with the <B>-under</B> - option. # Draw the label before elements are drawn. .g marker config- - ure first_marker -under yes You can add cross hairs or grid lines using - the <B>crosshairs</B> and <B>grid</B> components. # Display both cross hairs and - grid lines. .g crosshairs configure -hide no -color red .g grid con- - figure -hide no -dashes { 2 2 } # Set up a binding to reposition the - crosshairs. bind .g <Motion> { - .g crosshairs configure -position @%x,%y } The crosshairs are repo- - sitioned as the mouse pointer is moved in the graph. The pointer X-Y - coordinates define the center of the crosshairs. - - Finally, to get hardcopy of the graph, use the <B>postscript</B> component. # - Print the graph into file "file.ps" .g postscript output file.ps -max- - pect yes -decorations no This generates a file file.ps containing the - encapsulated PostScript of the graph. The option <B>-maxpect</B> says to - scale the plot to the size of the page. Turning off the <B>-decorations</B> - option denotes that no borders or color backgrounds should be drawn - <I>option</I>. <I>Option</I> may be any option described below for the <B>con-</B> - <B>figure</B> operation. - - <I>pathName</I> <B>configure</B> ?<I>option</I> <I>value</I>?... - Queries or modifies the configuration options of the graph. If - <I>option</I> isn't specified, a list describing the current options - for <I>pathName</I> is returned. If <I>option</I> is specified, but not - <I>value</I>, then a list describing <I>option</I> is returned. If one or - more <I>option</I> and <I>value</I> pairs are specified, then for each pair, - the option <I>option</I> is set to <I>value</I>. The following options are - valid. - - <B>-aspect</B> <I>width/height</I> - Force a fixed aspect ratio of <I>width/height</I>, a floating - point number. - - <B>-background</B> <I>color</I> - Sets the background color. This includes the margins and - legend, but not the plotting area. - - <B>-borderwidth</B> <I>pixels</I> - Sets the width of the 3-D border around the outside edge - of the widget. The <B>-relief</B> option determines if the bor- - der is to be drawn. The default is 2. - - <B>-bottommargin</B> <I>pixels</I> - If non-zero, overrides the computed size of the margin - extending below the X-coordinate axis. If <I>pixels</I> is 0, - the automatically computed size is used. The default is - 0. - - <B>-bufferelements</B> <I>boolean</I> - Indicates whether an internal pixmap to buffer the dis- - play of data elements should be used. If <I>boolean</I> is - true, data elements are drawn to an internal pixmap. - This option is especially useful when the graph is - redrawn frequently while the remains data unchanged (for - example, moving a marker across the plot). See the <B>SPEED</B> - <B>TIPS</B> section. The default is 1. - - <B>-cursor</B> <I>cursor</I> - Specifies the widget's cursor. The default cursor is - crosshair. - - <B>-font</B> <I>fontName</I> - Specifies the font of the graph title. The default is - *-Helvetica-Bold-R-Normal-*-18-180-*. - - <B>-halo</B> <I>pixels</I> - Specifies a maximum distance to consider when searching - for the closest data point (see the element's <B>closest</B> - operation below). Data points further than <I>pixels</I> away - text. <I>Justify</I> must be left, right, or center. The - default is center. - - <B>-leftmargin</B> <I>pixels</I> - If non-zero, overrides the computed size of the margin - extending from the left edge of the window to the Y-coor- - dinate axis. If <I>pixels</I> is 0, the automatically computed - size is used. The default is 0. - - <B>-plotbackground</B> <I>color</I> - Specifies the background color of the plotting area. The - default is white. - - <B>-plotborderwidth</B> <I>pixels</I> - Sets the width of the 3-D border around the plotting - area. The <B>-plotrelief</B> option determines if a border is - drawn. The default is 2. - - <B>-plotpadx</B> <I>pad</I> - Sets the amount of padding to be added to the left and - right sides of the plotting area. <I>Pad</I> can be a list of - one or two screen distances. If <I>pad</I> has two elements, - the left side of the plotting area entry is padded by the - first distance and the right side by the second. If <I>pad</I> - is just one distance, both the left and right sides are - padded evenly. The default is 8. - - <B>-plotpady</B> <I>pad</I> - Sets the amount of padding to be added to the top and - bottom of the plotting area. <I>Pad</I> can be a list of one or - two screen distances. If <I>pad</I> has two elements, the top - of the plotting area is padded by the first distance and - the bottom by the second. If <I>pad</I> is just one distance, - both the top and bottom are padded evenly. The default - is 8. - - <B>-plotrelief</B> <I>relief</I> - Specifies the 3-D effect for the plotting area. <I>Relief</I> - specifies how the interior of the plotting area should - appear relative to rest of the graph; for example, raised - means the plot should appear to protrude from the graph, - relative to the surface of the graph. The default is - sunken. - - <B>-relief</B> <I>relief</I> - Specifies the 3-D effect for the graph widget. <I>Relief</I> - specifies how the graph should appear relative to widget - it is packed into; for example, raised means the graph - should appear to protrude. The default is flat. - - <B>-rightmargin</B> <I>pixels</I> - If non-zero, overrides the computed size of the margin - - <B>-tile</B> <I>image</I> - Specifies a tiled background for the widget. If <I>image</I> - isn't "", the background is tiled using <I>image</I>. Other- - wise, the normal background color is drawn (see the - <B>-background</B> option). <I>Image</I> must be an image created - using the Tk <B>image</B> command. The default is "". - - <B>-title</B> <I>text</I> - Sets the title to <I>text</I>. If <I>text</I> is "", no title will be - displayed. - - <B>-topmargin</B> <I>pixels</I> - If non-zero, overrides the computed size of the margin - above the x2 axis. If <I>pixels</I> is 0, the automatically - computed size is used. The default is 0. - - <B>-width</B> <I>pixels</I> - Specifies the requested width of the widget. The default - is 5i. - - <I>pathName</I> <B>crosshairs</B> <I>operation</I> ?<I>arg</I>? - See the <B>CROSSHAIRS</B> <B>COMPONENT</B> section. - - <I>pathName</I> <B>element</B> <I>operation</I> ?<I>arg</I>?... - See the <B>ELEMENT</B> <B>COMPONENTS</B> section. - - <I>pathName</I> <B>extents</B> <I>item</I> - Returns the size of a particular item in the graph. <I>Item</I> must - be either leftmargin, rightmargin, topmargin, bottommargin, - plotwidth, or plotheight. - - <I>pathName</I> <B>grid</B> <I>operation</I> ?<I>arg</I>?... - See the <B>GRID</B> <B>COMPONENT</B> section. - - <I>pathName</I> <B>invtransform</B> <I>winX</I> <I>winY</I> - Performs an inverse coordinate transformation, mapping window - coordinates back to graph coordinates, using the standard X-axis - and Y-axis. Returns a list of containing the X-Y graph coordi- - nates. - - <I>pathName</I> <B>inside</B> <I>x</I> <I>y</I> - Returns 1 is the designated screen coordinate (<I>x</I> and <I>y</I>) is - inside the plotting area and 0 otherwise. - - <I>pathName</I> <B>legend</B> <I>operation</I> ?<I>arg</I>?... - See the <B>LEGEND</B> <B>COMPONENT</B> section. - - <I>pathName</I> <B>line</B> <B>operation</B> <B>arg</B>... - The operation is the same as <B>element</B>. - - <I>pathName</I> <B>marker</B> <I>operation</I> ?<I>arg</I>?... - photo Saves a Tk photo image. <I>OutputName</I> represents - the name of a Tk photo image that must already - have been created. - - wmf Saves an Aldus Placeable Metafile. <I>OutputName</I> - represents the filename where the metafile is - written. If <I>outputName</I> is CLIPBOARD, then out- - put is written directly to the Windows clip- - board. This format is available only under - Microsoft Windows. - - emf Saves an Enhanced Metafile. <I>OutputName</I> repre- - sents the filename where the metafile is writ- - ten. If <I>outputName</I> is CLIPBOARD, then output - is written directly to the Windows clipboard. - This format is available only under Microsoft - Windows. - - <B>-height</B> <I>size</I> - Specifies the height of the graph. <I>Size</I> is a screen - distance. The graph will be redrawn using this dimen- - sion, rather than its current window height. - - <B>-width</B> <I>size</I> - Specifies the width of the graph. <I>Size</I> is a screen - distance. The graph will be redrawn using this dimen- - sion, rather than its current window width. - - <I>pathName</I> <B>transform</B> <I>x</I> <I>y</I> - Performs a coordinate transformation, mapping graph coordinates - to window coordinates, using the standard X-axis and Y-axis. - Returns a list containing the X-Y screen coordinates. - - <I>pathName</I> <B>xaxis</B> <I>operation</I> ?<I>arg</I>?... - - <I>pathName</I> <B>x2axis</B> <I>operation</I> ?<I>arg</I>?... - - <I>pathName</I> <B>yaxis</B> <I>operation</I> ?<I>arg</I>?... - - <I>pathName</I> <B>y2axis</B> <I>operation</I> ?<I>arg</I>?... - See the <B>AXIS</B> <B>COMPONENTS</B> section. - - -</PRE> -<H2>GRAPH COMPONENTS</H2><PRE> - A graph is composed of several components: coordinate axes, data ele- - ments, legend, grid, cross hairs, postscript, and annotation markers. - Instead of one big set of configuration options and operations, the - graph is partitioned, where each component has its own configuration - options and operations that specifically control that aspect or part of - the graph. - - <B>AXIS</B> <B>COMPONENTS</B> - Four coordinate axes are automatically created: two X-coordinate axes - You can have several axes. To create an axis, invoke the axis component - and its create operation. # Create a new axis called "tempAxis" .g - axis create tempAxis You map data elements to an axis using the ele- - ment's -mapy and -mapx configuration options. They specify the coordi- - nate axes an element is mapped onto. # Now map the tempAxis data to - this axis. .g element create "e1" -xdata $x -ydata $y -mapy tempAxis - Any number of axes can be displayed simultaneously. They are drawn in - the margins surrounding the plotting area. The default axes x and y - are drawn in the bottom and left margins. The axes x2 and y2 are drawn - in top and right margins. By default, only x and y are shown. Note - that the axes can have different scales. - - To display a different axis or more than one axis, you invoke one of - the following components: <B>xaxis</B>, <B>yaxis</B>, <B>x2axis</B>, and <B>y2axis</B>. Each com- - ponent has a <B>use</B> operation that designates the axis (or axes) to be - drawn in that corresponding margin: <B>xaxis</B> in the bottom, <B>yaxis</B> in the - left, <B>x2axis</B> in the top, and <B>y2axis</B> in the right. # Display the axis - tempAxis in the left margin. .g yaxis use tempAxis The <B>use</B> operation - takes a list of axis names as its last argument. This is the list of - axes to be drawn in this margin. - - You can configure axes in many ways. The axis scale can be linear or - logarithmic. The values along the axis can either monotonically - increase or decrease. If you need custom tick labels, you can specify - a Tcl procedure to format the label any way you wish. You can control - how ticks are drawn, by changing the major tick interval or the number - of minor ticks. You can define non-uniform tick intervals, such as for - time-series plots. - - - <I>pathName</I> <B>axis</B> <B>bind</B> <I>tagName</I> ?<I>sequence</I>? ?<I>command</I>? - Associates <I>command</I> with <I>tagName</I> such that whenever the event - sequence given by <I>sequence</I> occurs for an axis with this tag, - <I>command</I> will be invoked. The syntax is similar to the <B>bind</B> com- - mand except that it operates on graph axes, rather than widgets. - See the <B>bind</B> manual entry for complete details on <I>sequence</I> and - the substitutions performed on <I>command</I> before invoking it. - - If all arguments are specified then a new binding is created, - replacing any existing binding for the same <I>sequence</I> and <I>tag-</I> - <I>Name</I>. If the first character of <I>command</I> is + then <I>command</I> aug- - ments an existing binding rather than replacing it. If no <I>com-</I> - <I>mand</I> argument is provided then the command currently associated - with <I>tagName</I> and <I>sequence</I> (it's an error occurs if there's no - such binding) is returned. If both <I>command</I> and <I>sequence</I> are - missing then a list of all the event sequences for which bind- - ings have been defined for <I>tagName</I>. - - <I>pathName</I> <B>axis</B> <B>cget</B> <I>axisName</I> <I>option</I> - Returns the current value of the option given by <I>option</I> for - <I>axisName</I>. <I>Option</I> may be any option described below for the axis - <B>configure</B> operation. - the list matching the current event sequence will have - its Tcl command executed. Implicitly the name of the - element is always the first tag in the list. The default - value is all. - - <B>-color</B> <I>color</I> - Sets the color of the axis and tick labels. The default - is black. - - <B>-descending</B> <I>boolean</I> - Indicates whether the values along the axis are monotoni- - cally increasing or decreasing. If <I>boolean</I> is true, the - axis values will be decreasing. The default is 0. - - <B>-hide</B> <I>boolean</I> - Indicates if the axis is displayed. If <I>boolean</I> is false - the axis will be displayed. Any element mapped to the - axis is displayed regardless. The default value is 0. - - <B>-justify</B> <I>justify</I> - Specifies how the axis title should be justified. This - matters only when the axis title contains more than one - line of text. <I>Justify</I> must be left, right, or center. - The default is center. - - <B>-limits</B> <I>formatStr</I> - Specifies a printf-like description to format the minimum - and maximum limits of the axis. The limits are displayed - at the top/bottom or left/right sides of the plotting - area. <I>FormatStr</I> is a list of one or two format descrip- - tions. If one description is supplied, both the minimum - and maximum limits are formatted in the same way. If - two, the first designates the format for the minimum - limit, the second for the maximum. If "" is given as - either description, then the that limit will not be dis- - loosely, at the outer tick intervals. If the axis limit - is set with the -min or -max option, the axes are dis- - played tightly. If <I>boolean</I> is true, the axis range is - "loose". The default is 0. - - <B>-majorticks</B> <I>majorList</I> - Specifies where to display major axis ticks. You can use - this option to display ticks at non-uniform intervals. - <I>MajorList</I> is a list of axis coordinates designating the - location of major ticks. No minor ticks are drawn. If - <I>majorList</I> is "", major ticks will be automatically com- - puted. The default is "". - - <B>-max</B> <I>value</I> - Sets the maximum limit of <I>axisName</I>. Any data point - greater than <I>value</I> is not displayed. If <I>value</I> is "", the - maximum limit is calculated using the largest data value. - The default is "". - - <B>-min</B> <I>value</I> - Sets the minimum limit of <I>axisName</I>. Any data point less - than <I>value</I> is not displayed. If <I>value</I> is "", the minimum - limit is calculated using the smallest data value. The - default is "". - - <B>-minorticks</B> <I>minorList</I> - Specifies where to display minor axis ticks. You can use - this option to display minor ticks at non-uniform inter- - vals. <I>MinorList</I> is a list of real values, ranging from - 0.0 to 1.0, designating the placement of a minor tick. - No minor ticks are drawn if the <B>-majortick</B> option is also - set. If <I>minorList</I> is "", minor ticks will be automati- - cally computed. The default is "". - - <B>-rotate</B> <I>theta</I> - Specifies the how many degrees to rotate the axis tick - labels. <I>Theta</I> is a real value representing the number of - degrees to rotate the tick labels. The default is 0.0 - degrees. - - <B>-scrollcommand</B> <I>command</I> - Specify the prefix for a command used to communicate with - scrollbars for this axis, such as <I>.sbar</I> <I>set</I>. - - <B>-scrollmax</B> <I>value</I> - Sets the maximum limit of the axis scroll region. If - <I>value</I> is "", the maximum limit is calculated using the - largest data value. The default is "". - - <B>-scrollmin</B> <I>value</I> - Sets the minimum limit of axis scroll region. If <I>value</I> - is "", the minimum limit is calculated using the smallest - Indicates how many minor axis ticks are to be drawn. For - example, if <I>number</I> is two, only one minor tick is drawn. - If <I>number</I> is one, no minor ticks are displayed. The - default is 2. - - <B>-tickfont</B> <I>fontName</I> - Specifies the font for axis tick labels. The default is - *-Courier-Bold-R-Normal-*-100-*. - - <B>-tickformat</B> <I>formatStr</I> - Specifies a printf-like description to format teh axis - tick labels. You can get the standard tick labels again by - setting <I>formatStr</I> to "". The default is "". - - <B>-tickformatcommand</B>, <B>-command</B> <I>prefix</I> - Specifies a Tcl command to be invoked when formatting the - axis tick labels. <I>Prefix</I> is a string containing the name - of a Tcl proc and any extra arguments for the procedure. - This command is invoked for each major tick on the axis. - Two additional arguments are passed to the procedure: the - pathname of the widget and the current the numeric value - of the tick. The procedure returns the formatted tick - label. If "" is returned, no label will appear next to - the tick. You can get the standard tick labels again by - setting <I>prefix</I> to "". The default is "". - - The numeric value for the tick might change when using the - <B>-logscale</B> and <B>-tickformat</B> options. - - Please note that this procedure is invoked while the - graph is redrawn. You may query configuration options. - But do not them, because this can have unexpected - results. - - <B>-ticklength</B> <I>pixels</I> - Sets the length of major and minor ticks (minor ticks are - half the length of major ticks). If <I>pixels</I> is less than - zero, the axis will be inverted with ticks drawn pointing - towards the plot. The default is 0.1i. - - <B>-title</B> <I>text</I> - Sets the title of the axis. If <I>text</I> is "", no axis title - will be displayed. - - <B>-titlealternate</B> <I>boolean</I> - Indicates to display the axis title in its alternate - location. Normally the axis title is centered along the - axis. This option places the axis either to the right - (horizontal axes) or above (vertical axes) the axis. The - default is 0. - - <B>-titlecolor</B> <I>color</I> - Sets the color of the axis title. The default is black. - - <B>-titlefont</B> <I>fontName</I> - Specifies the font for axis title. The default is *-Hel- - vetica-Bold-R-Normal-*-14-140-*. - - Axis configuration options may be also be set by the <B>option</B> com- - mand. The resource class is Axis. The resource names are the - names of the axes (such as x or x2). option add - *Graph.Axis.Color blue option add *Graph.x.LogScale true - option add *Graph.x2.LogScale false - - <I>pathName</I> <B>axis</B> <B>create</B> <I>axisName</I> ?<I>option</I> <I>value</I>?... - Creates a new axis by the name <I>axisName</I>. No axis by the same - name can already exist. <I>Option</I> and <I>value</I> are described in above - in the axis <B>configure</B> operation. - - <I>pathName</I> <B>axis</B> <B>delete</B> ?<I>axisName</I>?... - Deletes the named axes. An axis is not really deleted until it - is not longer in use, so it's safe to delete axes mapped to ele- - ments. - - <I>pathName</I> <B>axis</B> <B>invtransform</B> <I>axisName</I> <I>value</I> - Performs the inverse transformation, changing the screen coordi- - nate <I>value</I> to a graph coordinate, mapping the value mapped to - - <I>pathName</I> <B>axis</B> <B>view</B> <I>axisName</I> - Change the viewable area of this axis. Use as an argument to a - scrollbar's "<I>-command</I>". - - The default axes are x, y, x2, and y2. But you can display more than - four axes simultaneously. You can also swap in a different axis with - <B>use</B> operation of the special axis components: <B>xaxis</B>, <B>x2axis</B>, <B>yaxis</B>, and - <B>y2axis</B>. .g create axis temp .g create axis time ... .g xaxis use temp - .g yaxis use time Only the axes specified for use are displayed on the - screen. - - The <B>xaxis</B>, <B>x2axis</B>, <B>yaxis</B>, and <B>y2axis</B> components operate on an axis - location rather than a specific axis like the more general <B>axis</B> compo- - nent does. They implicitly control the axis that is currently using to - that location. By default, <B>xaxis</B> uses the x axis, <B>yaxis</B> uses y, <B>x2axis</B> - uses x2, and <B>y2axis</B> uses y2. When more than one axis is displayed in a - margin, it represents the first axis displayed. - - The following operations are available for axes. They mirror exactly - the operations of the <B>axis</B> component. The <I>axis</I> argument must be <B>xaxis</B>, - <B>x2axis</B>, <B>yaxis</B>, or <B>y2axis</B>. This feature is deprecated since more than - one axis can now be used a margin. You should only use the <B>xaxis</B>, - <B>x2axis</B>, <B>yaxis</B>, and <B>y2axis</B> components with the <B>use</B> operation. For all - other operations, use the general <B>axis</B> component instead. - - <I>pathName</I> <I>axis</I> <B>cget</B> <I>option</I> - - <I>pathName</I> <I>axis</I> <B>configure</B> ?<I>option</I> <I>value</I>?... - - <I>pathName</I> <I>axis</I> <B>invtransform</B> <I>value</I> - - <I>pathName</I> <I>axis</I> <B>limits</B> - - <I>pathName</I> <I>axis</I> <B>transform</B> <I>value</I> - - <I>pathName</I> <I>axis</I> <B>use</B> ?<I>axisName</I>? - Designates the axis <I>axisName</I> is to be displayed at this loca- - tion. <I>AxisName</I> can not be already in use at another location. - This command returns the name of the axis currently using this - location. - - <B>CROSSHAIRS</B> <B>COMPONENT</B> - Cross hairs consist of two intersecting lines (one vertical and one - horizontal) drawn completely across the plotting area. They are used - to position the mouse in relation to the coordinate axes. Cross hairs - differ from line markers in that they are implemented using XOR drawing - primitives. This means that they can be quickly drawn and erased with- - out redrawing the entire graph. - - The following operations are available for cross hairs: - - <B>-color</B> <I>color</I> - Sets the color of the cross hairs. The default is black. - - <B>-dashes</B> <I>dashList</I> - Sets the dash style of the cross hairs. <I>DashList</I> is a - list of up to 11 numbers that alternately represent the - lengths of the dashes and gaps on the cross hair lines. - Each number must be between 1 and 255. If <I>dashList</I> is - "", the cross hairs will be solid lines. - - <B>-hide</B> <I>boolean</I> - Indicates whether cross hairs are drawn. If <I>boolean</I> is - true, cross hairs are not drawn. The default is yes. - - <B>-linewidth</B> <I>pixels</I> - Set the width of the cross hair lines. The default is 1. - - <B>-position</B> <I>pos</I> - Specifies the screen position where the cross hairs - intersect. <I>Pos</I> must be in the form "<I>@x,y</I>", where <I>x</I> and <I>y</I> - are the window coordinates of the intersection. - - Cross hairs configuration options may be also be set by the - <B>option</B> command. The resource name and class are crosshairs and - Crosshairs respectively. option add *Graph.Crosshairs.LineWidth - 2 option add *Graph.Crosshairs.Color red - - <I>pathName</I> <B>crosshairs</B> <B>off</B> - Turns off the cross hairs. - - <I>pathName</I> <B>crosshairs</B> <B>on</B> - Turns on the display of the cross hairs. - - <I>pathName</I> <B>crosshairs</B> <B>toggle</B> - Toggles the current state of the cross hairs, alternately map- - ping and unmapping the cross hairs. - - <B>ELEMENT</B> <B>COMPONENTS</B> - A data element represents a set of data. It contains x and y vectors - containing the coordinates of the data points. Elements can be dis- - played with a symbol at each data point and lines connecting the - points. Elements also control the appearance of the data, such as the - symbol type, line width, color etc. - - When new data elements are created, they are automatically added to a - list of displayed elements. The display list controls what elements - are drawn and in what order. - - The following operations are available for elements. - - <I>pathName</I> <B>element</B> <B>activate</B> <I>elemName</I> ?<I>index</I>?... - Specifies the data points of element <I>elemName</I> to be drawn using - replacing any existing binding for the same <I>sequence</I> and <I>tag-</I> - <I>Name</I>. If the first character of <I>command</I> is + then <I>command</I> aug- - ments an existing binding rather than replacing it. If no <I>com-</I> - <I>mand</I> argument is provided then the command currently associated - with <I>tagName</I> and <I>sequence</I> (it's an error occurs if there's no - such binding) is returned. If both <I>command</I> and <I>sequence</I> are - missing then a list of all the event sequences for which bind- - ings have been defined for <I>tagName</I>. - - <I>pathName</I> <B>element</B> <B>cget</B> <I>elemName</I> <I>option</I> - Returns the current value of the element configuration option - given by <I>option</I>. <I>Option</I> may be any of the options described - below for the element <B>configure</B> operation. - - <I>pathName</I> <B>element</B> <B>closest</B> <I>x</I> <I>y</I> ?<I>option</I> <I>value</I>?... ?<I>elemName</I>?... - Searches for the data point closest to the window coordinates <I>x</I> - and <I>y</I>. By default, all elements are searched. Hidden elements - (see the <B>-hide</B> option is false) are ignored. You can limit the - search by specifying only the elements you want to be consid- - ered. <I>ElemName</I> must be the name of an element that can not be - hidden. It returns a key-value list containing the name of the - closest element, the index of the closest data point, and the - graph-coordinates of the point. Returns "", if no data point - within the threshold distance can be found. The following - <I>option</I>-<I>value</I> pairs are available. - - <B>-along</B> <I>direction</I> - Search for the closest element using the following crite- - ria: - - x Find closest element vertically from the given X- - coordinate. - - y Find the closest element horizontally from the - given Y-coordinate. - - both Find the closest element for the given point - (using both the X and Y coordinates). - - <B>-halo</B> <I>pixels</I> - Specifies a threshold distance where selected data points - are ignored. <I>Pixels</I> is a valid screen distance, such as - 2 or 1.2i. If this option isn't specified, then it - defaults to the value of the graph's <B>-halo</B> option. - - <B>-interpolate</B> <I>string</I> - Indicates whether to consider projections that lie along - the line segments connecting data points when searching - for the closest point. The default value is 0. The val- - ues for <I>string</I> are described below. - - no Search only for the closest data point. - - <B>-activepen</B> <I>penName</I> - Specifies pen to use to draw active element. If <I>penName</I> - is "", no active elements will be drawn. The default is - activeLine. - - <B>-areabackground</B> <I>color</I> - Specifies the background color of the area under the - curve. The background area color is drawn only for bit- - maps (see the <B>-areapattern</B> option). If <I>color</I> is "", the - background is transparent. The default is black. - - <B>-areaforeground</B> <I>color</I> - Specifies the foreground color of the area under the - curve. The default is black. - - <B>-areapattern</B> <I>pattern</I> - Specifies how to fill the area under the curve. <I>Pattern</I> - may be the name of a Tk bitmap, solid, or "". If - "solid", then the area under the curve is drawn with the - color designated by the <B>-areaforeground</B> option. If a - bitmap, then the bitmap is stippled across the area. - Here the bitmap colors are controlled by the <B>-areafore-</B> - <B>ground</B> and <B>-areabackground</B> options. If <I>pattern</I> is "", no - filled area is drawn. The default is "". - - <B>-areatile</B> <I>image</I> - Specifies the name of a Tk image to be used to tile the - area under the curve. This option supersedes the <B>-areap-</B> - <B>attern</B> option. <I>Image</I> must be a photo image. If <I>image</I> is - "", no tiling is performed. The default is "". - - <B>-bindtags</B> <I>tagList</I> - Specifies the binding tags for the element. <I>TagList</I> is a - list of binding tag names. The tags and their order will - determine how events are handled for elements. Each tag - in the list matching the current event sequence will have - its Tcl command executed. Implicitly the name of the - element is always the first tag in the list. The default - value is all. - - <B>-color</B> <I>color</I> - Sets the color of the traces connecting the data points. - - <B>-dashes</B> <I>dashList</I> - Sets the dash style of element line. <I>DashList</I> is a list - of up to 11 numbers that alternately represent the - lengths of the dashes and gaps on the element line. Each - number must be between 1 and 255. If <I>dashList</I> is "", the - lines will be solid. - - <B>-data</B> <I>coordList</I> - Specifies the X-Y coordinates of the data. <I>CoordList</I> is - Sets the element's label in the legend. If <I>text</I> is "", - the element will have no entry in the legend. The - default label is the element's name. - - <B>-linewidth</B> <I>pixels</I> - Sets the width of the connecting lines between data - points. If <I>pixels</I> is 0, no connecting lines will be - drawn between symbols. The default is 0. - - <B>-mapx</B> <I>xAxis</I> - Selects the X-axis to map the element's X-coordinates - onto. <I>XAxis</I> must be the name of an axis. The default is - x. - - <B>-mapy</B> <I>yAxis</I> - Selects the Y-axis to map the element's Y-coordinates - onto. <I>YAxis</I> must be the name of an axis. The default is - y. - - <B>-offdash</B> <I>color</I> - Sets the color of the stripes when traces are dashed (see - the <B>-dashes</B> option). If <I>color</I> is "", then the "off" pix- - els will represent gaps instead of stripes. If <I>color</I> is - defcolor, then the color will be the same as the <B>-color</B> - option. The default is defcolor. - - <B>-outline</B> <I>color</I> - Sets the color or the outline around each symbol. If - <I>color</I> is "", then no outline is drawn. If <I>color</I> is def- - color, then the color will be the same as the <B>-color</B> - option. The default is defcolor. - - <B>-pen</B> <I>penname</I> - Set the pen to use for this element. - - <B>-outlinewidth</B> <I>pixels</I> - Sets the width of the outline bordering each symbol. If - <I>pixels</I> is 0, no outline will be drawn. The default is 1. - - <B>-pixels</B> <I>pixels</I> - Sets the size of symbols. If <I>pixels</I> is 0, no symbols - will be drawn. The default is 0.125i. - - <B>-scalesymbols</B> <I>boolean</I> - If <I>boolean</I> is true, the size of the symbols drawn for - <I>elemName</I> will change with scale of the X-axis and Y-axis. - At the time this option is set, the current ranges of the - axes are saved as the normalized scales (i.e scale factor - is 1.0) and the element is drawn at its designated size - (see the <B>-pixels</B> option). As the scale of the axes - change, the symbol will be scaled according to the - smaller of the X-axis and Y-axis scales. If <I>boolean</I> is - dratic spline is used. The default is <I>linear</I>. - - <B>-styles</B> <I>styleList</I> - Specifies what pen to use based on the range of weights - given. <I>StyleList</I> is a list of style specifications. Each - style specification, in turn, is a list consisting of a - pen name, and optionally a minimum and maximum range. - Data points whose weight (see the <B>-weight</B> option) falls - in this range, are drawn with this pen. If no range is - specified it defaults to the index of the pen in the - list. Note that this affects only symbol attributes. - Line attributes, such as line width, dashes, etc. are - ignored. - - <B>-symbol</B> <I>symbol</I> - Specifies the symbol for data points. <I>Symbol</I> can be - either square, circle, diamond, plus, cross, splus, - scross, triangle, "" (where no symbol is drawn), or a - bitmap. Bitmaps are specified as "<I>source</I> ?<I>mask</I>?", where - <I>source</I> is the name of the bitmap, and <I>mask</I> is the bit- - map's optional mask. The default is circle. - - <B>-trace</B> <I>direction</I> - Indicates whether connecting lines between data points - (whose X-coordinate values are either increasing or - decreasing) are drawn. <I>Direction</I> must be increasing, - decreasing, or both. For example, if <I>direction</I> is - increasing, connecting lines will be drawn only between - those data points where X-coordinate values are monotoni- - cally increasing. If <I>direction</I> is both, connecting lines - will be draw between all data points. The default is - both. - - <B>-weights</B> <I>wVec</I> - Specifies the weights of the individual data points. - This, with the list pen styles (see the <B>-styles</B> option), - controls how data points are drawn. <I>WVec</I> is the name of - a BLT vector or a list of numeric expressions represent- - ing the weights for each data point. - - <B>-xdata</B> <I>xVec</I> - Specifies the X-coordinates of the data. <I>XVec</I> is the - name of a BLT vector or a list of numeric expressions. - - <B>-ydata</B> <I>yVec</I> - Specifies the Y-coordinates of the data. <I>YVec</I> is the - name of a BLT vector or a list of numeric expressions. - - Element configuration options may also be set by the <B>option</B> com- - mand. The resource class is Element. The resource name is the - name of the element. option add *Graph.Element.symbol line - option add *Graph.e1.symbol line - - <I>pathName</I> <B>element</B> <B>exists</B> <I>elemName</I> - Returns 1 if an element <I>elemName</I> currently exists and 0 other- - wise. - - <I>pathName</I> <B>element</B> <B>names</B> ?<I>pattern</I>?... - Returns the elements matching one or more pattern. If no <I>pat-</I> - <I>tern</I> is given, the names of all elements is returned. - - <I>pathName</I> <B>element</B> <B>show</B> ?<I>nameList</I>? - Queries or modifies the element display list. The element dis- - play list designates the elements drawn and in what order. - <I>NameList</I> is a list of elements to be displayed in the order they - are named. If there is no <I>nameList</I> argument, the current dis- - play list is returned. - - <I>pathName</I> <B>element</B> <B>type</B> <I>elemName</I> - Returns the type of <I>elemName</I>. If the element is a bar element, - the commands returns the string "bar", otherwise it returns - "line". - - <B>GRID</B> <B>COMPONENT</B> - Grid lines extend from the major and minor ticks of each axis horizon- - tally or vertically across the plotting area. The following operations - are available for grid lines. - - <I>pathName</I> <B>grid</B> <B>cget</B> <I>option</I> - Returns the current value of the grid line configuration option - given by <I>option</I>. <I>Option</I> may be any option described below for - the grid <B>configure</B> operation. - - <I>pathName</I> <B>grid</B> <B>configure</B> ?<I>option</I> <I>value</I>?... - Queries or modifies the configuration options for grid lines. - If <I>option</I> isn't specified, a list describing all the current - grid options for <I>pathName</I> is returned. If <I>option</I> is specified, - but not <I>value</I>, then a list describing <I>option</I> is returned. If - one or more <I>option</I> and <I>value</I> pairs are specified, then for each - pair, the grid line option <I>option</I> is set to <I>value</I>. The follow- - ing options are valid for grid lines. - - <B>-color</B> <I>color</I> - Sets the color of the grid lines. The default is black. - - <B>-dashes</B> <I>dashList</I> - Sets the dash style of the grid lines. <I>DashList</I> is a list - of up to 11 numbers that alternately represent the - lengths of the dashes and gaps on the grid lines. Each - number must be between 1 and 255. If <I>dashList</I> is "", the - grid will be solid lines. - - <B>-hide</B> <I>boolean</I> - Indicates whether the grid should be drawn. If <I>boolean</I> is - - <B>-minor</B> <I>boolean</I> - Indicates whether the grid lines should be drawn for - minor ticks. If <I>boolean</I> is true, the lines will appear - at minor tick intervals. The default is 1. - - Grid configuration options may also be set by the <B>option</B> com- - mand. The resource name and class are grid and Grid respec- - tively. option add *Graph.grid.LineWidth 2 option add - *Graph.Grid.Color black - - <I>pathName</I> <B>grid</B> <B>off</B> - Turns off the display the grid lines. - - <I>pathName</I> <B>grid</B> <B>on</B> - Turns on the display the grid lines. - - <I>pathName</I> <B>grid</B> <B>toggle</B> - Toggles the display of the grid. - - <B>LEGEND</B> <B>COMPONENT</B> - The legend displays a list of the data elements. Each entry consists - of the element's symbol and label. The legend can appear in any margin - (the default location is in the right margin). It can also be posi- - tioned anywhere within the plotting area. - - The following operations are valid for the legend. - - <I>pathName</I> <B>legend</B> <B>activate</B> <I>pattern</I>... - Selects legend entries to be drawn using the active legend col- - ors and relief. All entries whose element names match <I>pattern</I> - are selected. To be selected, the element name must match only - one <I>pattern</I>. - - <I>pathName</I> <B>legend</B> <B>bind</B> <I>tagName</I> ?<I>sequence</I>? ?<I>command</I>? - Associates <I>command</I> with <I>tagName</I> such that whenever the event - sequence given by <I>sequence</I> occurs for a legend entry with this - tag, <I>command</I> will be invoked. Implicitly the element names in - the entry are tags. The syntax is similar to the <B>bind</B> command - except that it operates on legend entries, rather than widgets. - See the <B>bind</B> manual entry for complete details on <I>sequence</I> and - the substitutions performed on <I>command</I> before invoking it. - - If all arguments are specified then a new binding is created, - replacing any existing binding for the same <I>sequence</I> and <I>tag-</I> - <I>Name</I>. If the first character of <I>command</I> is + then <I>command</I> aug- - ments an existing binding rather than replacing it. If no <I>com-</I> - <I>mand</I> argument is provided then the command currently associated - with <I>tagName</I> and <I>sequence</I> (it's an error occurs if there's no - such binding) is returned. If both <I>command</I> and <I>sequence</I> are - missing then a list of all the event sequences for which bind- - ings have been defined for <I>tagName</I>. - - <B>-activebackground</B> <I>color</I> - Sets the background color for active legend entries. All - legend entries marked active (see the legend <B>activate</B> - operation) are drawn using this background color. - - <B>-activeborderwidth</B> <I>pixels</I> - Sets the width of the 3-D border around the outside edge - of the active legend entries. The default is 2. - - <B>-activeforeground</B> <I>color</I> - Sets the foreground color for active legend entries. All - legend entries marked as active (see the legend <B>activate</B> - operation) are drawn using this foreground color. - - <B>-activerelief</B> <I>relief</I> - Specifies the 3-D effect desired for active legend - entries. <I>Relief</I> denotes how the interior of the entry - should appear relative to the legend; for example, raised - means the entry should appear to protrude from the leg- - end, relative to the surface of the legend. The default - is flat. - - <B>-anchor</B> <I>anchor</I> - Tells how to position the legend relative to the posi- - tioning point for the legend. This is dependent on the - value of the <B>-position</B> option. The default is center. - - left or right - The anchor describes how to position the leg- - end vertically. - - top or bottom - The anchor describes how to position the leg- - end horizontally. - - @x,y The anchor specifies how to position the leg- - end relative to the positioning point. For - example, if <I>anchor</I> is center then the legend - is centered on the point; if <I>anchor</I> is n then - the legend will be drawn such that the top - center point of the rectangular region occu- - pied by the legend will be at the positioning - point. - - plotarea The anchor specifies how to position the leg- - end relative to the plotting area. For exam- - ple, if <I>anchor</I> is center then the legend is - centered in the plotting area; if <I>anchor</I> is - ne then the legend will be drawn such that - occupies the upper right corner of the plot- - ting area. - - Sets the width of the 3-D border around the outside edge - of the legend (if such border is being drawn; the <B>relief</B> - option determines this). The default is 2 pixels. - - <B>-font</B> <I>fontName</I> - <I>FontName</I> specifies a font to use when drawing the labels - of each element into the legend. The default is *-Hel- - vetica-Bold-R-Normal-*-12-120-*. - - <B>-foreground</B> <I>color</I> - Sets the foreground color of the text drawn for the ele- - ment's label. The default is black. - - <B>-hide</B> <I>boolean</I> - Indicates whether the legend should be displayed. If - <I>boolean</I> is true, the legend will not be draw. The - default is no. - - <B>-ipadx</B> <I>pad</I> - Sets the amount of internal padding to be added to the - width of each legend entry. <I>Pad</I> can be a list of one or - two screen distances. If <I>pad</I> has two elements, the left - side of the legend entry is padded by the first distance - and the right side by the second. If <I>pad</I> is just one - distance, both the left and right sides are padded - evenly. The default is 2. - - <B>-ipady</B> <I>pad</I> - Sets an amount of internal padding to be added to the - height of each legend entry. <I>Pad</I> can be a list of one or - two screen distances. If <I>pad</I> has two elements, the top - of the entry is padded by the first distance and the bot- - tom by the second. If <I>pad</I> is just one distance, both the - top and bottom of the entry are padded evenly. The - default is 2. - - <B>-padx</B> <I>pad</I> - Sets the padding to the left and right exteriors of the - legend. <I>Pad</I> can be a list of one or two screen dis- - tances. If <I>pad</I> has two elements, the left side of the - legend is padded by the first distance and the right side - by the second. If <I>pad</I> has just one distance, both the - left and right sides are padded evenly. The default is - 4. - - <B>-pady</B> <I>pad</I> - Sets the padding above and below the legend. <I>Pad</I> can be - a list of one or two screen distances. If <I>pad</I> has two - elements, the area above the legend is padded by the - first distance and the area below by the second. If <I>pad</I> - is just one distance, both the top and bottom areas are - padded evenly. The default is 0. - plotting area. If <I>boolean</I> is true, the legend will be - drawn on top of any elements that may overlap it. The - default is no. - - <B>-relief</B> <I>relief</I> - Specifies the 3-D effect for the border around the leg- - end. <I>Relief</I> specifies how the interior of the legend - should appear relative to the graph; for example, raised - means the legend should appear to protrude from the - graph, relative to the surface of the graph. The default - is sunken. - - Legend configuration options may also be set by the <B>option</B> com- - mand. The resource name and class are legend and Legend respec- - tively. option add *Graph.legend.Foreground blue option add - *Graph.Legend.Relief raised - - <I>pathName</I> <B>legend</B> <B>deactivate</B> <I>pattern</I>... - Selects legend entries to be drawn using the normal legend col- - ors and relief. All entries whose element names match <I>pattern</I> - are selected. To be selected, the element name must match only - one <I>pattern</I>. - - <I>pathName</I> <B>legend</B> <B>get</B> <I>pos</I> - Returns the name of the element whose entry is at the screen - position <I>pos</I> in the legend. <I>Pos</I> must be in the form "<I>@x,y</I>", - where <I>x</I> and <I>y</I> are window coordinates. If the given coordinates - do not lie over a legend entry, "" is returned. - - <B>PEN</B> <B>COMPONENTS</B> - Pens define attributes (both symbol and line style) for elements. Pens - mirror the configuration options of data elements that pertain to how - symbols and lines are drawn. Data elements use pens to determine how - they are drawn. A data element may use several pens at once. In this - case, the pen used for a particular data point is determined from each - element's weight vector (see the element's <B>-weight</B> and <B>-style</B> options). - - One pen, called activeLine, is automatically created. It's used as the - default active pen for elements. So you can change the active - attributes for all elements by simply reconfiguring this pen. .g pen - configure "activeLine" -color green You can create and use several - pens. To create a pen, invoke the pen component and its create opera- - tion. .g pen create myPen You map pens to a data element using either - the element's <B>-pen</B> or <B>-activepen</B> options. .g element create "line1" - -xdata $x -ydata $tempData \ - -pen myPen An element can use several pens at once. This is done by - specifying the name of the pen in the element's style list (see the - <B>-styles</B> option). .g element configure "line1" -styles { myPen 2.0 3.0 - } This says that any data point with a weight between 2.0 and 3.0 is to - be drawn using the pen myPen. All other points are drawn with the ele- - ment's default attributes. - - specified, then for each pair, the pen option <I>option</I> is set to - <I>value</I>. The following options are valid for pens. - - <B>-color</B> <I>color</I> - Sets the color of the traces connecting the data points. - - <B>-dashes</B> <I>dashList</I> - Sets the dash style of element line. <I>DashList</I> is a list - of up to 11 numbers that alternately represent the - lengths of the dashes and gaps on the element line. Each - number must be between 1 and 255. If <I>dashList</I> is "", the - lines will be solid. - - <B>-fill</B> <I>color</I> - Sets the interior color of symbols. If <I>color</I> is "", then - the interior of the symbol is transparent. If <I>color</I> is - defcolor, then the color will be the same as the <B>-color</B> - option. The default is defcolor. - - <B>-linewidth</B> <I>pixels</I> - Sets the width of the connecting lines between data - points. If <I>pixels</I> is 0, no connecting lines will be - drawn between symbols. The default is 0. - - <B>-offdash</B> <I>color</I> - Sets the color of the stripes when traces are dashed (see - the <B>-dashes</B> option). If <I>color</I> is "", then the "off" pix- - els will represent gaps instead of stripes. If <I>color</I> is - defcolor, then the color will be the same as the <B>-color</B> - option. The default is defcolor. - - <B>-outline</B> <I>color</I> - Sets the color or the outline around each symbol. If - <I>color</I> is "", then no outline is drawn. If <I>color</I> is def- - color, then the color will be the same as the <B>-color</B> - option. The default is defcolor. - - <B>-outlinewidth</B> <I>pixels</I> - Sets the width of the outline bordering each symbol. If - <I>pixels</I> is 0, no outline will be drawn. The default is 1. - - <B>-pixels</B> <I>pixels</I> - Sets the size of symbols. If <I>pixels</I> is 0, no symbols - will be drawn. The default is 0.125i. - - <B>-symbol</B> <I>symbol</I> - Specifies the symbol for data points. <I>Symbol</I> can be - either square, circle, diamond, plus, cross, splus, - scross, triangle, "" (where no symbol is drawn), or a - bitmap. Bitmaps are specified as "<I>source</I> ?<I>mask</I>?", where - <I>source</I> is the name of the bitmap, and <I>mask</I> is the bit- - map's optional mask. The default is circle. - - Creates a new pen by the name <I>penName</I>. No pen by the same name - can already exist. <I>Option</I> and <I>value</I> are described in above in - the pen <B>configure</B> operation. - - <I>pathName</I> <B>pen</B> <B>delete</B> ?<I>penName</I>?... - Deletes the named pens. A pen is not really deleted until it is - not longer in use, so it's safe to delete pens mapped to ele- - ments. - - <I>pathName</I> <B>pen</B> <B>names</B> ?<I>pattern</I>?... - Returns a list of pens matching zero or more patterns. If no - <I>pattern</I> argument is give, the names of all pens are returned. - - <B>POSTSCRIPT</B> <B>COMPONENT</B> - The graph can generate encapsulated PostScript output. There are sev- - eral configuration options you can specify to control how the plot will - be generated. You can change the page dimensions and borders. The - plot itself can be scaled, centered, or rotated to landscape. The - PostScript output can be written directly to a file or returned through - the interpreter. - - The following postscript operations are available. - - <I>pathName</I> <B>postscript</B> <B>cget</B> <I>option</I> - Returns the current value of the postscript option given by - <I>option</I>. <I>Option</I> may be any option described below for the post- - script <B>configure</B> operation. - - <I>pathName</I> <B>postscript</B> <B>configure</B> ?<I>option</I> <I>value</I>?... - Queries or modifies the configuration options for PostScript - generation. If <I>option</I> isn't specified, a list describing the - current postscript options for <I>pathName</I> is returned. If <I>option</I> - is specified, but not <I>value</I>, then a list describing <I>option</I> is - returned. If one or more <I>option</I> and <I>value</I> pairs are specified, - then for each pair, the postscript option <I>option</I> is set to - <I>value</I>. The following postscript options are available. - - <B>-center</B> <I>boolean</I> - Indicates whether the plot should be centered on the - PostScript page. If <I>boolean</I> is false, the plot will be - placed in the upper left corner of the page. The default - is 1. - - <B>-colormap</B> <I>varName</I> - <I>VarName</I> must be the name of a global array variable that - specifies a color mapping from the X color name to Post- - Script. Each element of <I>varName</I> must consist of Post- - Script code to set a particular color value (e.g. ``1.0 - 1.0 0.0 setrgbcolor''). When generating color informa- - tion in PostScript, the array variable <I>varName</I> is checked - if an element of the name as the color exists. If so, it - uses its value as the PostScript command to set the - Script. Each element of <I>varName</I> must consist of a Tcl - list with one or two elements; the name and point size of - a PostScript font. When outputting PostScript commands - for a particular font, the array variable <I>varName</I> is - checked to see if an element by the specified font - exists. If there is such an element, then the font - information contained in that element is used in the - PostScript output. (If the point size is omitted from - the list, the point size of the X font is used). Other- - wise the X font is examined in an attempt to guess what - PostScript font to use. This works only for fonts whose - foundry property is <I>Adobe</I> (such as Times, Helvetica, - Courier, etc.). If all of this fails then the font - defaults to Helvetica-Bold. - - <B>-decorations</B> <I>boolean</I> - Indicates whether PostScript commands to generate color - backgrounds and 3-D borders will be output. If <I>boolean</I> - is false, the background will be white and no 3-D borders - will be generated. The default is 1. - - <B>-height</B> <I>pixels</I> - Sets the height of the plot. This lets you print the - graph with a height different from the one drawn on the - screen. If <I>pixels</I> is 0, the height is the same as the - widget's height. The default is 0. - - <B>-landscape</B> <I>boolean</I> - If <I>boolean</I> is true, this specifies the printed area is to - be rotated 90 degrees. In non-rotated output the X-axis - of the printed area runs along the short dimension of the - page (``portrait'' orientation); in rotated output the - X-axis runs along the long dimension of the page (``land- - scape'' orientation). Defaults to 0. - - <B>-maxpect</B> <I>boolean</I> - Indicates to scale the plot so that it fills the Post- - Script page. The aspect ratio of the graph is still - retained. The default is 0. - - <B>-padx</B> <I>pad</I> - Sets the horizontal padding for the left and right page - borders. The borders are exterior to the plot. <I>Pad</I> can - be a list of one or two screen distances. If <I>pad</I> has two - elements, the left border is padded by the first distance - and the right border by the second. If <I>pad</I> has just one - distance, both the left and right borders are padded - evenly. The default is 1i. - - <B>-pady</B> <I>pad</I> - Sets the vertical padding for the top and bottom page - borders. The borders are exterior to the plot. <I>Pad</I> can - The default width is 8.5i. - - <B>-width</B> <I>pixels</I> - Sets the width of the plot. This lets you generate a - plot of a width different from that of the widget. If - <I>pixels</I> is 0, the width is the same as the widget's width. - The default is 0. - - Postscript configuration options may be also be set by the - <B>option</B> command. The resource name and class are postscript and - Postscript respectively. option add *Graph.postscript.Decora- - tions false option add *Graph.Postscript.Landscape true - - <I>pathName</I> <B>postscript</B> <B>output</B> ?<I>fileName</I>? ?<I>option</I> <I>value</I>?... - Outputs a file of encapsulated PostScript. If a <I>fileName</I> argu- - ment isn't present, the command returns the PostScript. If any - <I>option-value</I> pairs are present, they set configuration options - controlling how the PostScript is generated. <I>Option</I> and <I>value</I> - can be anything accepted by the postscript <B>configure</B> operation - above. - - <B>MARKER</B> <B>COMPONENTS</B> - Markers are simple drawing procedures used to annotate or highlight - areas of the graph. Markers have various types: text strings, bitmaps, - images, connected lines, windows, or polygons. They can be associated - with a particular element, so that when the element is hidden or un- - hidden, so is the marker. By default, markers are the last items - drawn, so that data elements will appear in behind them. You can - change this by configuring the <B>-under</B> option. - - Markers, in contrast to elements, don't affect the scaling of the coor- - dinate axes. They can also have <I>elastic</I> coordinates (specified by -Inf - and Inf respectively) that translate into the minimum or maximum limit - of the axis. For example, you can place a marker so it always remains - in the lower left corner of the plotting area, by using the coordinates - -Inf,-Inf. - - The following operations are available for markers. - - <I>pathName</I> <B>marker</B> <B>after</B> <I>markerId</I> ?<I>afterId</I>? - Changes the order of the markers, drawing the first marker after - the second. If no second <I>afterId</I> argument is specified, the - marker is placed at the end of the display list. This command - can be used to control how markers are displayed since markers - are drawn in the order of this display list. - - <I>pathName</I> <B>marker</B> <B>before</B> <I>markerId</I> ?<I>beforeId</I>? - Changes the order of the markers, drawing the first marker - before the second. If no second <I>beforeId</I> argument is specified, - the marker is placed at the beginning of the display list. This - command can be used to control how markers are displayed since - markers are drawn in the order of this display list. - with <I>tagName</I> and <I>sequence</I> (it's an error occurs if there's no - such binding) is returned. If both <I>command</I> and <I>sequence</I> are - missing then a list of all the event sequences for which bind- - ings have been defined for <I>tagName</I>. - - <I>pathName</I> <B>marker</B> <B>cget</B> <I>option</I> - Returns the current value of the marker configuration option - given by <I>option</I>. <I>Option</I> may be any option described below in - the <B>configure</B> operation. - - <I>pathName</I> <B>marker</B> <B>configure</B> <I>markerId</I> ?<I>option</I> <I>value</I>?... - Queries or modifies the configuration options for markers. If - <I>option</I> isn't specified, a list describing the current options - for <I>markerId</I> is returned. If <I>option</I> is specified, but not - <I>value</I>, then a list describing <I>option</I> is returned. If one or - more <I>option</I> and <I>value</I> pairs are specified, then for each pair, - the marker option <I>option</I> is set to <I>value</I>. - - The following options are valid for all markers. Each type of - marker also has its own type-specific options. They are - described in the sections below. - - <B>-bindtags</B> <I>tagList</I> - Specifies the binding tags for the marker. <I>TagList</I> is a - list of binding tag names. The tags and their order will - determine how events for markers are handled. Each tag - in the list matching the current event sequence will have - its Tcl command executed. Implicitly the name of the - marker is always the first tag in the list. The default - value is all. - - <B>-coords</B> <I>coordList</I> - Specifies the coordinates of the marker. <I>CoordList</I> is a - list of graph coordinates. The number of coordinates - required is dependent on the type of marker. Text, - image, and window markers need only two coordinates (an - X-Y coordinate). Bitmap markers can take either two or - four coordinates (if four, they represent the corners of - the bitmap). Line markers need at least four coordinates, - polygons at least six. If <I>coordList</I> is "", the marker - will not be displayed. The default is "". - - <B>-element</B> <I>elemName</I> - Links the marker with the element <I>elemName</I>. The marker - is drawn only if the element is also currently displayed - (see the element's <B>show</B> operation). If <I>elemName</I> is "", - the marker is always drawn. The default is "". - - <B>-hide</B> <I>boolean</I> - Indicates whether the marker is drawn. If <I>boolean</I> is - true, the marker is not drawn. The default is no. - - <B>-under</B> <I>boolean</I> - Indicates whether the marker is drawn below/above data - elements. If <I>boolean</I> is true, the marker is be drawn - underneath the data element symbols and lines. Other- - wise, the marker is drawn on top of the element. The - default is 0. - - <B>-xoffset</B> <I>pixels</I> - Specifies a screen distance to offset the marker horizon- - tally. <I>Pixels</I> is a valid screen distance, such as 2 or - 1.2i. The default is 0. - - <B>-yoffset</B> <I>pixels</I> - Specifies a screen distance to offset the markers verti- - cally. <I>Pixels</I> is a valid screen distance, such as 2 or - 1.2i. The default is 0. - - Marker configuration options may also be set by the <B>option</B> com- - mand. The resource class is either BitmapMarker, ImageMarker, - LineMarker, PolygonMarker, TextMarker, or WindowMarker, depend- - ing on the type of marker. The resource name is the name of the - marker. option add *Graph.TextMarker.Foreground white option - add *Graph.BitmapMarker.Foreground white option add - *Graph.m1.Background blue - - <I>pathName</I> <B>marker</B> <B>create</B> <I>type</I> ?<I>option</I> <I>value</I>?... - Creates a marker of the selected type. <I>Type</I> may be either text, - line, bitmap, image, polygon, or window. This command returns - the marker identifier, used as the <I>markerId</I> argument in the - other marker-related commands. If the <B>-name</B> option is used, - this overrides the normal marker identifier. If the name pro- - vided is already used for another marker, the new marker will - replace the old. - - <I>pathName</I> <B>marker</B> <B>delete</B> ?<I>name</I>?... - Removes one of more markers. The graph will automatically be - redrawn without the marker.. - - <I>pathName</I> <B>marker</B> <B>exists</B> <I>markerId</I> - Returns 1 if the marker <I>markerId</I> exists and 0 otherwise. - - <I>pathName</I> <B>marker</B> <B>names</B> ?<I>pattern</I>? - Returns the names of all the markers that currently exist. If - <I>pattern</I> is supplied, only those markers whose names match it - will be returned. - - <I>pathName</I> <B>marker</B> <B>type</B> <I>markerId</I> - Returns the type of the marker given by <I>markerId</I>, such as line - or text. If <I>markerId</I> is not a valid a marker identifier, "" is - returned. - - <B>BITMAP</B> <B>MARKERS</B> - The following options are specific to bitmap markers: - - <B>-background</B> <I>color</I> - Same as the <B>-fill</B> option. - - <B>-bitmap</B> <I>bitmap</I> - Specifies the bitmap to be displayed. If <I>bitmap</I> is "", the - marker will not be displayed. The default is "". - - <B>-fill</B> <I>color</I> - Sets the background color of the bitmap. If <I>color</I> is the empty - string, no background will be transparent. The default back- - ground color is "". - - <B>-foreground</B> <I>color</I> - Same as the <B>-outline</B> option. - - <B>-mask</B> <I>mask</I> - Specifies a mask for the bitmap to be displayed. This mask is a - bitmap itself, denoting the pixels that are transparent. If - <I>mask</I> is "", all pixels of the bitmap will be drawn. The default - is "". - - <B>-outline</B> <I>color</I> - Sets the foreground color of the bitmap. The default value is - black. - - <B>-rotate</B> <I>theta</I> - Sets the rotation of the bitmap. <I>Theta</I> is a real number repre- - senting the angle of rotation in degrees. The marker is first - rotated and then placed according to its anchor position. The - default rotation is 0.0. - - <B>IMAGE</B> <B>MARKERS</B> - A image marker displays an image. Image markers are created with the - marker's <B>create</B> operation in the form: <I>pathName</I> <B>marker</B> <B>create</B> <B>image</B> - ?<I>option</I> <I>value</I>?... There may be many <I>option</I>-<I>value</I> pairs, each sets a - configuration option for the marker. These same <I>option</I>-<I>value</I> pairs may - be used with the marker's <B>configure</B> operation. - - The following options are specific to image markers: - - <B>-anchor</B> <I>anchor</I> - <I>Anchor</I> tells how to position the image relative to the position- - ing point for the image. For example, if <I>anchor</I> is center then - the image is centered on the point; if <I>anchor</I> is n then the - image will be drawn such that the top center point of the rect- - angular region occupied by the image will be at the positioning - point. This option defaults to center. - - <B>-image</B> <I>image</I> - Specifies the image to be drawn. If <I>image</I> is "", the marker - gaps on the line. Each number must be between 1 and 255. If - <I>dashList</I> is "", the marker line will be solid. - - <B>-fill</B> <I>color</I> - Sets the background color of the line. This color is used with - striped lines (see the <B>-fdashes</B> option). If <I>color</I> is the empty - string, no background color is drawn (the line will be dashed, - not striped). The default background color is "". - - <B>-linewidth</B> <I>pixels</I> - Sets the width of the lines. The default width is 0. - - <B>-outline</B> <I>color</I> - Sets the foreground color of the line. The default value is - black. - - <B>-stipple</B> <I>bitmap</I> - Specifies a stipple pattern used to draw the line, rather than a - solid line. <I>Bitmap</I> specifies a bitmap to use as the stipple - pattern. If <I>bitmap</I> is "", then the line is drawn in a solid - fashion. The default is "". - - <B>POLYGON</B> <B>MARKERS</B> - A polygon marker displays a closed region described as two or more con- - nected line segments. It is assumed the first and last points are con- - nected. Polygon markers are created using the marker <B>create</B> operation - in the form: <I>pathName</I> <B>marker</B> <B>create</B> <B>polygon</B> ?<I>option</I> <I>value</I>?... There - may be many <I>option</I>-<I>value</I> pairs, each sets a configuration option for - the marker. These same <I>option</I>-<I>value</I> pairs may be used with the <B>marker</B> - <B>configure</B> command to change the marker's configuration. The following - options are supported for polygon markers: - - <B>-dashes</B> <I>dashList</I> - Sets the dash style of the outline of the polygon. <I>DashList</I> is a - list of up to 11 numbers that alternately represent the lengths - of the dashes and gaps on the outline. Each number must be - between 1 and 255. If <I>dashList</I> is "", the outline will be a - solid line. - - <B>-fill</B> <I>color</I> - Sets the fill color of the polygon. If <I>color</I> is "", then the - interior of the polygon is transparent. The default is white. - - <B>-linewidth</B> <I>pixels</I> - Sets the width of the outline of the polygon. If <I>pixels</I> is zero, - no outline is drawn. The default is 0. - - <B>-outline</B> <I>color</I> - Sets the color of the outline of the polygon. If the polygon is - stippled (see the <B>-stipple</B> option), then this represents the - foreground color of the stipple. The default is black. - - the marker's <B>configure</B> operation. - - The following options are specific to text markers: - - <B>-anchor</B> <I>anchor</I> - <I>Anchor</I> tells how to position the text relative to the position- - ing point for the text. For example, if <I>anchor</I> is center then - the text is centered on the point; if <I>anchor</I> is n then the text - will be drawn such that the top center point of the rectangular - region occupied by the text will be at the positioning point. - This default is center. - - <B>-background</B> <I>color</I> - Same as the <B>-fill</B> option. - - <B>-font</B> <I>fontName</I> - Specifies the font of the text. The default is *-Helvetica- - Bold-R-Normal-*-120-*. - - <B>-fill</B> <I>color</I> - Sets the background color of the text. If <I>color</I> is the empty - string, no background will be transparent. The default back- - ground color is "". - - <B>-foreground</B> <I>color</I> - Same as the <B>-outline</B> option. - - <B>-justify</B> <I>justify</I> - Specifies how the text should be justified. This matters only - when the marker contains more than one line of text. <I>Justify</I> - must be left, right, or center. The default is center. - - <B>-outline</B> <I>color</I> - Sets the color of the text. The default value is black. - - <B>-padx</B> <I>pad</I> - Sets the padding to the left and right exteriors of the text. - <I>Pad</I> can be a list of one or two screen distances. If <I>pad</I> has - two elements, the left side of the text is padded by the first - distance and the right side by the second. If <I>pad</I> has just one - distance, both the left and right sides are padded evenly. The - default is 4. - - <B>-pady</B> <I>pad</I> - Sets the padding above and below the text. <I>Pad</I> can be a list of - one or two screen distances. If <I>pad</I> has two elements, the area - above the text is padded by the first distance and the area - below by the second. If <I>pad</I> is just one distance, both the top - and bottom areas are padded evenly. The default is 4. - - <B>-rotate</B> <I>theta</I> - Specifies the number of degrees to rotate the text. <I>Theta</I> is a - - <I>option</I>-<I>value</I> pairs may be used with the marker's <B>configure</B> command. - - The following options are specific to window markers: - - <B>-anchor</B> <I>anchor</I> - <I>Anchor</I> tells how to position the widget relative to the posi- - tioning point for the widget. For example, if <I>anchor</I> is center - then the widget is centered on the point; if <I>anchor</I> is n then - the widget will be displayed such that the top center point of - the rectangular region occupied by the widget will be at the - positioning point. This option defaults to center. - - <B>-height</B> <I>pixels</I> - Specifies the height to assign to the marker's window. If this - option isn't specified, or if it is specified as "", then the - window is given whatever height the widget requests internally. - - <B>-width</B> <I>pixels</I> - Specifies the width to assign to the marker's window. If this - option isn't specified, or if it is specified as "", then the - window is given whatever width the widget requests internally. - - <B>-window</B> <I>pathName</I> - Specifies the widget to be managed by the graph. <I>PathName</I> must - be a child of the <B>graph</B> widget. - - -</PRE> -<H2>GRAPH COMPONENT BINDINGS</H2><PRE> - Specific graph components, such as elements, markers and legend - entries, can have a command trigger when event occurs in them, much - like canvas items in Tk's canvas widget. Not all event sequences are - valid. The only binding events that may be specified are those related - to the mouse and keyboard (such as <B>Enter</B>, <B>Leave</B>, <B>ButtonPress</B>, <B>Motion</B>, - and <B>KeyPress</B>). - - Only one element or marker can be picked during an event. This means, - that if the mouse is directly over both an element and a marker, only - the uppermost component is selected. This isn't true for legend - entries. Both a legend entry and an element (or marker) binding com- - mands will be invoked if both items are picked. - - It is possible for multiple bindings to match a particular event. This - could occur, for example, if one binding is associated with the element - name and another is associated with one of the element's tags (see the - <B>-bindtags</B> option). When this occurs, all of the matching bindings are - invoked. A binding associated with the element name is invoked first, - followed by one binding for each of the element's bindtags. If there - are multiple matching bindings for a single tag, then only the most - specific binding is invoked. A continue command in a binding script - terminates that script, and a break command terminates that script and - skips any remaining scripts for the event, just as for the bind com- - mand. - - vectors are updated. - - From Tcl, create the vectors and configure the element to use them. - vector X Y .g element configure line1 -xdata X -ydata Y To set data - points from C, you pass the values as arrays of doubles using the - <B>Blt_ResetVector</B> call. The vector is reset with the new data and at the - next idle point (when Tk re-enters its event loop), the graph will be - redrawn automatically. #include <tcl.h> #include <blt.h> - - register int i; Blt_Vector *xVec, *yVec; double x[50], y[50]; - - /* Get the BLT vectors "X" and "Y" (created above from Tcl) */ if - ((Blt_GetVector(interp, "X", &xVec) != TCL_OK) || - (Blt_GetVector(interp, "Y", &yVec) != TCL_OK)) { - return TCL_ERROR; } - - for (i = 0; i < 50; i++) { - x[i] = i * 0.02; - y[i] = sin(x[i]); } - - /* Put the data into BLT vectors */ if ((Blt_ResetVector(xVec, x, 50, - 50, TCL_VOLATILE) != TCL_OK) || - (Blt_ResetVector(yVec, y, 50, 50, TCL_VOLATILE) != TCL_OK)) { - return TCL_ERROR; } See the <B>vector</B> manual page for more details. - - -</PRE> -<H2>SPEED TIPS</H2><PRE> - There may be cases where the graph needs to be drawn and updated as - quickly as possible. If drawing speed becomes a big problem, here are - a few tips to speed up displays. - - <B>o</B> Try to minimize the number of data points. The more data points the - looked at, the more work the graph must do. - - <B>o</B> If your data is generated as floating point values, the time required - to convert the data values to and from ASCII strings can be signifi- - cant, especially when there any many data points. You can avoid the - redundant string-to-decimal conversions using the C API to BLT vec- - tors. - - <B>o</B> Data elements without symbols are drawn faster than with symbols. - Set the data element's <B>-symbol</B> option to none. If you need to draw - symbols, try using the simple symbols such as splus and scross. - - <B>o</B> Don't stipple or dash the element. Solid lines are much faster. - - <B>o</B> If you update data elements frequently, try turning off the widget's - <B>-bufferelements</B> option. When the graph is first displayed, it draws - data elements into an internal pixmap. The pixmap acts as a cache, - so that when the graph needs to be redrawn again, and the data ele- - ments or coordinate axes haven't changed, the pixmap is simply copied - to the screen. This is especially useful when you are using markers - to highlight points and regions on the graph. But if the graph is - - - -BLT BLT_VERSION graph(n) -</PRE> -<HR> -<ADDRESS> -Man(1) output converted with -<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a> -</ADDRESS> -</BODY> -</HTML> |