Boost logo

Boost-Commit :

From: JakeVoytko_at_[hidden]
Date: 2008-01-08 00:24:10


Author: jakevoytko
Date: 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
New Revision: 42604
URL: http://svn.boost.org/trac/boost/changeset/42604

Log:
Added new SVG documentation and modified the document structure

Added:
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/1d_full_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/1d_simple_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/1d_special_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/1d_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/2d_full_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/2d_simple_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/2d_special_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/2d_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/acknowledgements.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/behavior_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/boxplot_full_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/boxplot_simple_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/boxplot_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/colors.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/how_to_use.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/interface.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/plot_defaults.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/rationale.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/stylesheet_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_interface.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_tutorial.qbk (contents, props changed)
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/to_do.qbk (contents, props changed)
Text files modified:
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/HTML.manifest | 6
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/index.html | 65
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/acknowledgements.html | 23
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/behavior.html | 25
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/behavior/behavior_limits.html | 49
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/behavior/behavior_stylesheets.html | 64
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/color.html | 64
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/howtouse.html | 56
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface.html | 39
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_1d_plot_interface.html | 1217 +---
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_2d_plot_interface.html | 1296 +---
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_boxplot_interface.html | 959 --
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_interface.html | 766 +-
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/plot_defaults.html | 32
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/plot_defaults/1d_defaults.html | 560 -
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/plot_defaults/2d_defaults.html | 618 -
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/svg_boxplot_tutorial.html | 33
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html | 66
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/todo.html | 25
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple.html | 36
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple/2d_simple_code_example.html | 46
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple/2d_special.html | 61
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple/full_2d_layout.html | 32
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple.html | 35
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple/1d_special.html | 50
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple/full_1d_layout.html | 32
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple/tutorial_code_1d_example.html | 46
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_stylesheet.html | 35
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.qbk | 1775 ------
   sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.xml | 10793 ++++++++++++++++++++++-----------------
   30 files changed, 7849 insertions(+), 11055 deletions(-)

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/1d_full_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/1d_full_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,101 @@
+[section:full_1d_layout Tutorial: 1D Full Layout Example]
+
+ #include <boost/svg_plot/svg_1d_plot.hpp>
+ using namespace boost::svg;
+ #include <cmath> // for sqrt
+
+ #include <vector>
+ #include <deque>
+ #include <boost/array.hpp>
+
+ // Three different STL-style containers:
+ using std::vector;
+ using std::deque;
+ using boost::array;
+
+ // Three sample functions:
+ double f(double x)
+ {
+ return sqrt(x);
+ }
+
+ double g(double x)
+ {
+ return -2 + x*x;
+ }
+
+ double h(double x)
+ {
+ return -1 + 2*x;
+ }
+
+ int main()
+ {
+ vector<double> data1;
+ deque<double> data2;
+ boost::array<double, 10> data3;
+ // Fill the containers with some data using the functions:
+ int j=0;
+ for(double i=0; i<9.5; i+=1.)
+ {
+ data1.push_back(f(i));
+ data2.push_front(g(i));
+ data3[j++] = h(i);
+ }
+
+ svg_1d_plot my_plot; // Construct my_plot.
+
+ // Set many plot options,
+ // using chaining to group similar aspects together.
+ // Size/scale settings.
+ my_plot.image_size(500, 350)
+ .x_range(-3, 10);
+
+ // Text settings.
+ my_plot.title("Oh My!")
+ .title_font_size(29)
+ .x_label("Time in Months");
+
+ // Commands.
+ my_plot.legend_on(true)
+ .plot_window_on(true)
+ .x_label_on(true)
+ .x_major_labels_on(true);
+
+ // Color settings.
+ my_plot.background_color(svg_color(67, 111, 69))
+ .legend_background_color(svg_color(207, 202,167))
+ .legend_border_color(svg_color(102, 102, 84))
+ .plot_background_color(svg_color(136, 188, 126))
+ .title_color(white);
+
+ // Axis settings.
+ my_plot.x_major_interval(2)
+ .x_major_tick_length(14)
+ .x_major_tick_width(1)
+ .x_minor_tick_length(7)
+ .x_minor_tick_width(1)
+ .x_num_minor_ticks(3);
+
+ // Legend settings.
+ my_plot.legend_title_font_size(15);
+
+ // Put the three containers of data onto the plot.
+ my_plot.plot(data1, "Lions", blue);
+ my_plot.plot(data2, "Tigers", orange);
+ my_plot.plot(data3, "Bears", red);
+
+ my_plot.write("1d_complex.svg");
+
+ return 0;
+ }
+
+
+This produces the following output:
+
+[$images/1d_complex.png]
+
+A little bit of color customization goes a very long way!
+
+[endsect] [/section:tutorial_1d_example_code]
+

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/1d_simple_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/1d_simple_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,92 @@
+[section:tutorial_code_1d_example Simple 1D Example]
+ #include <boost/svg_plot/svg_1d_plot.hpp>
+ using namespace boost::svg;
+ #include <vector>
+ using std::vector;
+
+ int main()
+ {
+ // STL containers for the data to plot.
+ vector<double> dan_times;
+ vector<double> elaine_times;
+ // Fill the two containers with some data:
+ dan_times.push_back(3.1);
+ dan_times.push_back(4.2);
+ elaine_times.push_back(2.1);
+ elaine_times.push_back(7.8);
+
+ svg_1d_plot my_plot; // Construct a plot.
+
+ my_plot.title("Race Times") // Set title and legend.
+ .legend_on(true)
+ .x_range(-1, 11);
+
+ // Add the containers of data to the plot.
+ my_plot.plot(dan_times, "Dan", blue);
+ my_plot.plot(elaine_times, "Elaine", orange);
+
+ // And finally write the plot to a file.
+ my_plot.write("simple.svg");
+ return 0;
+ }
+
+[$images/1d_simple.png] [/ TODO All .png should be .svg?]
+
+[h4 A Note On Syntax]
+The syntax "`my_plot.title("Hello").legend_on(true)...`" may appear unfamiliar.
+However, it works on the same 'chaining' principle that the assignment operator, addition
+operator, and output operator in the following code works:
+
+ a = b = c = d = 3;
+
+ std::cout << a + b + c + d << std::endl; // prints 12
+
+Within all of the plot classes, 'chaining' works the same way.
+Equivalent tradional code for the example is as follows:
+
+ my_plot.title("Race Times");
+ my_plot.legend_on(true);
+ my_plot.x_range(-1, 11);
+
+Chaining allows you to avoid repeatedly typing `myplot.`
+and to easily group related settings like plot window, axes, ... together,
+and avoids relying on the order of arguments in ordinary function calls.
+Order would clearly become impracticable with dozens of arguments required
+to set all the myriad plot options.
+
+In the long run, I think you will find that chaining helps organize your code
+to read more clearly!
+
+[h4 Simple 1D Example Breakdown]
+Let's examine what this does in detail.
+
+ svg_1d_plot my_plot;
+
+This constructor initializes a new 1D plot, called my_plot, and also sets all the many default values.
+
+ my_plot.title("Race Times")
+ .legend_on(true)
+ .x_range(-1, 11);
+
+All of the setter methods (or member functions) are fairly self-explanatory. To walk through it once,
+
+* the title, which will appear at the top of the graph, will say "Race Times".
+* `legend_on(true)` means that the legend will display.
+* `x_range(-1, 11)` means that the axis displayed will be between -1 and 11,
+as you can see in the above image.
+
+ my_plot.plot(my_data, "Race times");
+
+This draws `my_data` onto `my_plot`. As many containers as you want can be drawn
+to `my_plot`. The name of this data series is "Race times", and this text will show up
+in the legend (if my_plot.legend_on() == true). These are the two required parameters for this plot function call.
+There are also optional parameters, as seen in the section
+[@.\html\svg_plot\interface\svg_1d_plot_interface.html svg_1d_plot_interface.html]
+
+``
+my_plot.write("simple.svg");
+``
+This writes our plot to the file "simple.svg". SVG files can be viewed with most browsers,
+or embedded into documents.
+
+[endsect] [/section:tutorial_code_1d_simple 1D Simple Program]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/1d_special_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/1d_special_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,39 @@
+[section:1d_special Tutorial: 1D Special Features]
+
+[heading X-Axis Grid Lines]
+
+If you would like vertical grid lines that go on the graph,
+you can make the following call to `svg_1d_plot`:
+
+ my_plot.x_major_grid_on(true)
+ .x_minor_grid_on(true);
+
+To color style it, you might add the following calls:
+
+ my_plot.x_major_grid_color(lightgray) // Darker color for major grid.
+ .x_minor_grid_color(whitesmoke); // Lighter color for minor grid.
+
+This will produce the following image:
+
+[$images/1d_x_grid.png]
+
+[h4 X-Axis External Style]
+
+TODO this has ben changed to x_up_ticks and x_down_ticks and y_left_ticks and y_right_ticks.
+
+By default the 'ticks' face into the plot area.
+Alternatively, you can use an 'external' style,
+so that the ticks face out from the X- and/or Y-axes.
+
+ my_plot.x_external_style_on(true);
+ my_plot.y_external_style_on(true);
+
+The axis is still otherwise styled using the normal methods.
+The following is an example of the style that you can produce with this:
+
+[$images/1d_x_external.png]
+
+[important If the axis is turned off, `x_external_style_on(true)` will not
+turn the axis back on. To do that, you must call `axis_on(true)`]
+
+[endsect] [/1d_special Tutorial: 1D Special Features]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/1d_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/1d_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,10 @@
+[section:tutorial_code_1d_simple Tutorial: 1D]
+
+[include 1d_simple_tutorial.qbk]
+
+[include 1d_full_tutorial.qbk]
+
+[include 1d_special_tutorial.qbk]
+
+[endsect] [/1d_tutorial]
+

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/2d_full_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/2d_full_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,98 @@
+[section:full_2d_layout Tutorial: Fuller Layout Example]
+
+ #include <boost/svg_plot/svg_2d_plot.hpp>
+ using namespace boost::svg;
+ #include <map>
+ using std::multimap;
+ #include <cmath> // for sqrt
+
+ // Some example functions:
+ double f(double x)
+ {
+ return sqrt(x);
+ }
+
+ double g(double x)
+ {
+ return -2 + x*x;
+ }
+
+ double h(double x)
+ {
+ return -1 + 2*x;
+ }
+
+ int main()
+ {
+ multimap<double, double> data1, data2, data3;
+
+ for(double i=0; i<=10.; i+=1.)
+ {
+ data1[i] = f(i);
+ data2[i] = g(i);
+ data3[i] = h(i);
+ }
+
+ svg_2d_plot my_plot;
+
+ // Size/scale settings.
+ my_plot.image_size(700, 500)
+ .x_range(-1, 10)
+ .y_range(-5, 100)
+
+ // Text settings.
+ my_plot.title("Plot of Mathematical Functions")
+ .title_font_size(29)
+ .x_label("Time in Months");
+
+ // Commands.
+ my_plot.legend_on(true)
+ .plot_window_on(true)
+ .x_label_on(true)
+ .x_major_labels_on(true);
+
+ // Color settings.
+ my_plot.background_color(svg_color(67, 111, 69))
+ .legend_background_color(svg_color(207, 202,167))
+ .legend_border_color(svg_color(102, 102, 84))
+ .plot_background_color(svg_color(136, 188, 126))
+ .title_color(white);
+
+ //X axis settings.
+ my_plot.x_major_interval(2)
+ .x_major_tick_length(14)
+ .x_major_tick_width(1)
+ .x_minor_tick_length(7)
+ .x_minor_tick_width(1)
+ .x_num_minor_ticks(3)
+
+ // Y axis settings.
+ .y_major_tick(10)
+ .y_num_minor_ticks(2);
+
+ // Legend settings.
+ my_plot.legend_title_font_size(15);
+
+ my_plot.plot(data1, "Sqrt(x)", blue,
+ _point_style = none,
+ _show_line = true);
+
+ my_plot.plot(data2, "-2 + x^2", orange,
+ _show_line = true);
+
+ my_plot.plot(data3, "-1 + 2x", red,
+ _point_style = square);
+
+ my_plot.write("2d_full.svg");
+
+ return 0;
+ }
+
+This produces the following output:
+
+[$images/2d_full.png]
+
+A little bit of color customization goes a *very* long way!
+
+[endsect] [/section:tutorial_2d_example_code]
+

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/2d_simple_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/2d_simple_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,80 @@
+[section:2d_simple_code_example Simple Code Example]
+
+ #include <boost/svg_plot/svg_2d_plot.hpp>
+ using namespace boost::svg;
+
+ #include <map>
+ using std::multimap; // A more complicated STL container.
+
+ int main()
+ {
+ multimap<double, double> map1;
+ multimap<double, double> map2;
+
+ // This is random data used purely for example purposes.
+ map1[1.] = 3.2;
+ map1[1.] = 5.4;
+ map1[7.3] = 9.1;
+
+ map2[3.1] = 6.1;
+ map2[5.4] = 7.;
+
+ svg_1d_plot my_plot;
+
+ my_plot.title("Race Times")
+ .legend_on(true)
+ .x_range(-1, 11)
+ .background_border_color(black);
+
+ my_plot.plot(map1, "Series 1", blue); // Data point marker color is blue.
+ my_plot.plot(map2, "Series 2", orange);
+
+ my_plot.write("simple_2d.svg");
+ return 0;
+ }
+
+[h4 Resulting Simple_2D Example Image]
+
+[$images/2d_simple.png]
+
+[h4 Simple_2D Example Breakdown]
+
+Let's examine what this does.
+
+ svg_2d_plot my_plot;
+
+This constructor initializes a new 2D plot. This also sets the many default values.
+
+ my_plot.title("Race Times")
+ .legend_on(true)
+ .x_range(-1, 11)
+ .background_border_color(black);
+
+All of the setter methods are fairly self-explanatory. To walk through it once,
+
+* The title, which will appear at the top of the graph, will say "Race Times".
+* `legend_on(true)` means that the legend will show up.
+* `x_range(-1, 11)` means that the axis displayed will be between -1 and 11,
+as you can see in the above images.
+* `background_border_color(black)` sets the border around the image to `black`.
+Ordinarily it is left to be the color of the background
+(and so no border of plot area will be visible).
+
+ my_plot.plot(map1, "Series 1", blue);
+ my_plot.plot(map2, "Series 2", orange);
+
+This draws `map1` and `map2` to `my_plot`. As many containers as you want can
+be drawn to `my_plot`. Evntually the plot will become cluttered and confusing,
+when I recommend just creating another plot!
+
+The name of the series is `"Race times"`, and that
+text will show in the legend. These are the two required parameters for
+this function call. There are many optional parameters, as seen in the section
+[@plot_function Getting More Out of the `plot()` Function]
+
+ my_plot.write("simple_2d.svg");
+
+This writes plot `my_plot` to the file "simple_2d.svg".
+
+[endsect] [/section:tutorial_code_simple Simple program]
+

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/2d_special_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/2d_special_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,66 @@
+[section:2d_special Tutorial: 2D Special Features]
+
+[h4 Y-Axis Grid Lines]
+
+If you would like horizontal grid lines that go across the graph,
+you can make the following call to `svg_2d_plot`:
+
+ my_plot.y_major_grid_on(true)
+ .y_minor_grid_on(true);
+
+To style it, you could use the following calls:
+
+ my_plot.y_major_grid_color(lightgray) // Darker color for major grid.
+ .y_minor_grid_color(whitesmoke); // lighter color for minor grid.
+
+This will produce the following image:
+
+[$images/2d_y_grid.png]
+
+Similarly you can have horizontal and/or vertical lines:
+
+ my_plot.x_major_grid_on(true)
+ .x_minor_grid_on(true);
+
+and color it similarly:
+
+ my_plot.y_major_grid_color(lightblue) // Darker color for major grid.
+ .y_minor_grid_color(azure); // lighter color for minor grid.
+
+[heading External Y Axis Style]
+
+For an alternate way to display a regular axis, you can use an external style:
+
+ my_plot.y_external_style_on(true);
+
+[important If the axis is turned off, `y_external_style_on(true)` will not
+turn the axis back on. To do that, you must call `axis_on(true)`]
+
+[heading Fill the area between the plot and the axis]
+
+When there is a call to the plot() method, define `_area_fill_color`
+
+ multimap<double, double> my_data;
+ svg_2d_plot my_plot;
+
+ my_plot.plot(my_data, "Data", _area_fill_color(red));
+
+This produces the following image:
+
+[$images/2d_area_fill.png]
+
+[h4 Curve Interpolation]
+
+If you would like an *interpolated curve* shown over your data
+(rather than the default straight lines joining points),
+simply use the following command:
+
+ my_plot.plot(data, "Series 1", _bezier_curve = "true");
+
+This produces something like the following images:
+
+[$images/2d_bezier.png]
+
+[warning The `_bezier_curve` feature still displays undesired behavior in extreme circumstances. Do not use this feature with curves that have a numeric_limit value (`-NaN`, for example), or with data that has high irregularity in X-Axis spacing (for example, a clump of points between (0, 1) on the X axis, with the next one at 100 on the X axis.)]
+
+[endsect] [/2d_special Tutorial: 2D Special Features]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/2d_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/2d_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,9 @@
+[section:tutorial_2d_code_simple Tutorial: 2D]
+
+[include 2d_simple_tutorial.qbk]
+
+[include 2d_full_tutorial.qbk]
+
+[include 2d_special_tutorial.qbk]
+
+[endsect] [/2d_tutorial]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/acknowledgements.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/acknowledgements.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,17 @@
+[section:acknowledgements Acknowledgements]
+I would like to thank the following people:
+
+* [*Google]: For offering Summer of Code, and giving me the opportunity to do
+something I never would have done otherwise.
+* [*Joaquín Mª López Muñoz]: My GSoC mentor. His proofreading and advice
+helped shape the project into what it is today, and prevented small problems
+from becoming major problems.
+* [*Paul A. Bristow]: For showing an active interest, offering literally dozens
+of minor and major features he'd like to see, and for helping with Boost.Build.
+* [*Matias Capeletto]: For showing an active interest, and offering feature
+suggestions.
+* [*Sarah Braun]: For helping me pick colors for examples.
+* [*Boost Community]: For all of the encouragement, suggestions, disagreements,
+and patience.
+
+[endsect] [/section:acknowledgements]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/behavior_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/behavior_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,98 @@
+[section:behavior Behavior]
+[section:behavior_limits Numerical Limits]
+All limits that are dealt with are double precision floating-point limits.
+Limits are detected when data is added to the plot by the call to the `plot()` method.
+
+Currently, the line interpolation algorithms do not take limits into account,
+so behavior may be incorrect for such plots as `1 / x`.
+
+Data at the limits are drawn as a circle with
+`_stroke_color = lightgray` and `_fill_color = whitesmoke`.
+This will become customizable.
+
+[h4 NaN]
+Any double precision floating-point numbers that return a nonzero value for the
+function `_isnan(double)` is considered to be a NaN value. When plotted, the
+number will appear in the user-defined coordinates as 0.
+
+[h4 Infinity]
+
+Any double precision floating point number that is equal to either of the
+following is considered to be Infinity:
+
+ std::numeric_limits<double>::max()
+ std::numeric_limits<double>::infinity()
+
+When plotted, these values will appear at the *top* of your plot window.
+If the plot window is not turned on,
+these points will appear at the top of the graph.
+
+[h4 Negative Infinity]
+
+Any double precision floating point number that is equal to either of the
+following is considered to be Negative Infinity:
+
+ std::numeric_limits<double>::min()
+ -std::numeric_limits<double>::infinity()
+ std::numeric_limits<double>::denorm_min()
+
+When plotted, these values will appear at the *bottom* of your plot window.
+If the plot window is not turned on,
+these points will appear at the bottom of the graph.
+
+Here is an example of numeric limits handling in action:
+
+[$images/2d_limit.png] [\TODO this file is missing!]
+[endsect] [/section:numerical_limits]
+
+[section:behavior_stylesheets Stylesheets]
+Stylesheets currently have only a single way of being used with the program: they are parsed by the `svg` class, and if the stylesheet parses correctly, they are loaded directly into the SVG file. I recognize that it may also be desired to link to an external stylesheet, but this presents a few problems.
+
+* Both of the files now need to be transported with the produced document.
+* Any user-provided function object that is used to convert between image formats now suddenly needs to be able to load the image format from an external source.
+
+When the image converter portion of the project is completed, the image format function object will not be forced to deal with CSS. This is primarily a practical matter, and keeps simple an already difficult task. This will not preclude a method that extracts appropriate data from the CSS file and calls the appropriate functions. For example, if the user provides the following:
+
+ #Background
+ {
+ fill : #FFF;
+ stroke : #041010 ;
+ }
+
+why shouldn't
+
+ my_plot.background_color(black);
+ my_plot.background_border_color(svg_color(4, 16, 16));
+
+be called?
+
+[caution Please note that the language that is accepted by the parser is actually stricter than the real CSS standard allows for. Following GSoC, the parser will be reimplemented to reflect the parser suggested by the CSS standard. All identifiers (class, ID, or otherwise), must be the *one and only* identifier on the line. The following is not accepted:
+
+ rect, circle
+ {
+ fill : #00FF00;
+ stroke : #000000;
+ }
+
+
+But the following is:
+
+``
+rect
+{
+ fill : #00FF00;
+ stroke : #00FF00;
+}
+
+circle
+{
+ fill : #00FF00;
+ stroke : #00FF00;
+}
+``
+
+None of the power of CSS is compromised (I believe), but it becomes more verbose.
+] [/caution]
+
+[endsect] [/section:behavior_stylesheets]
+[endsect] [/section:behavior Behavior]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/boxplot_full_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/boxplot_full_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,3 @@
+[section:svg_boxplot_tutorial_full Full Boxplot Layout]
+[/ TODO?]
+[endsect] [/section:svg_boxplot_tutorial_full Full Boxplot Layout]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/boxplot_simple_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/boxplot_simple_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,97 @@
+[section:svg_boxplot_tutorial_simple Simple Example]
+
+ #include <boost/svg_plot/svg_2d_plot.hpp>
+ using namespace boost::svg;
+ #include <vector>
+ using std::vector;
+
+ // Functions to simulate distributions.
+ double f(double x)
+ {
+ return 50 / x;
+ }
+
+ double g(double x)
+ {
+ return 40 + 25 * sin(x * 50);
+ }
+
+ int main()
+ {
+ std::vector<double> data1, data2;
+
+ // Fill our vectors with values from the functions f(x) and g(x)
+ for(double i = .1; i < 10; i+=.1)
+ {
+ data1.push_back(f(i));
+ data2.push_back(g(i));
+ }
+
+ // Initialize a new box plot.
+ svg_boxplot my_plot;
+
+ // Color information.
+ my_plot.background_border_color(black);
+
+ // String information.
+ my_plot.title("Boxplots of Common Functions")
+ .x_label("Functions")
+ .y_label("Population Size");
+
+ // Axis information.
+ my_plot.y_range(0, 100)
+ .y_minor_tick_length(20)
+ .y_major_interval(20);
+
+ // Write data.
+ my_plot.plot(data1, "[50 / x]");
+ my_plot.plot(data2, "[40 + 25 * sin(x * 50)]");
+
+ my_plot.write("boxplot_simple.svg");
+ return 0;
+ }
+
+[h4 Image boxplot_simple.svg]
+
+[$images/boxplot_simple.png]
+
+[h4 Basic Example Breakdown]
+Let's examine what this does.
+
+[h4 Initializing a new boxplot]
+
+This initializes a new boxplot. This also sets the many default values. 4
+ svg_boxplot my_plot;
+
+[h4 Setting a color]
+This sets the border color of the entire image to black (not just the plot area).
+
+ my_plot.background_border_color(black);
+
+[h4 Setting strings in the plot]
+The following code sets the title that appears at the top of the graph, the
+label that appears at the bottom to name the X-axis, and the label that appears
+to the left to name the Y-axis.
+
+ my_plot.title("Boxplots of Common Functions")
+ .x_label("Functions")
+ .y_label("Population Size");
+
+[h3 Setting axis information]
+Axis information for the X-axis is very limited, as the coordinate system
+for the X-axis is discrete, based only on the number of box-and-whisker plots
+that appear in the same boxplot.
+
+Axis information for the Y-axis, however, is customizable much in the same way that that axis information is customizable for the 1 and 2 dimensional graphs.
+ // Axis information.
+ my_plot.y_range(0, 100)
+ .y_minor_tick_length(20)
+ .y_major_interval(20);
+
+[h4 Writing to a file]
+
+This finally writes our plot to the file "boxplot_simple.svg".
+``
+my_plot.write("boxplot_simple.svg");
+``
+[endsect] [/section:svg_boxplot_tutorial_simple]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/boxplot_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/boxplot_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,8 @@
+[section:svg_boxplot_tutorial Tutorial: Boxplot]
+
+[include boxplot_simple_tutorial.qbk]
+
+[include boxplot_full_tutorial.qbk]
+
+
+[endsect] [/section:tutorial]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/colors.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/colors.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,88 @@
+[section:color Colors]
+
+The project supports any
+[@http://en.wikipedia.org/wiki/RGB_color_model RGB color],
+as well as a number of colors that are
+[@http://www.w3.org/TR/SVG/types.html#ColorKeywords named by the SVG standard].
+
+[heading `svg_color_constant`]
+`svg_color_constant` is simply an enumerated list.
+
+The constants are defined at
+[@../../../../boost/svg_plot/svg_color.hpp svg_color.hpp].
+
+Examples of colors are at [@../../../svg_plot/example/svg_colors.cpp svg_colors.cpp].
+
+The
+[@http://www.w3.org/TR/SVG/types.html#ColorKeywords colors are defined by the SVG standard here].
+The list contains all of your expected colors, such as magenta, pink and red, and many other shades.
+
+The list also contains one extra color element, `blank`, defined as `false`,
+used when you need to pass a color, but would not like it to be visible.
+This comes in handy for defining defaults for functions, for example.
+
+[h4 Example of using `svg_color_constant`]
+
+ using namespace boost::svg;
+
+ svg_2d_plot my_plot;
+
+ svg_color_constant my_const = red;
+
+ my_plot.background_border_color(my_const);
+ my_plot.background_color(lightgray);
+
+[note `svg_color` has a constructor for `svg_color_constant`, so you can use
+a `svg_color_constant` in place of a `svg_color` and it will be implicitly
+converted. However, there is *not* currently an
+`svg_color::operator=(svg_color_constant)` overload, so
+``
+svg_color my_color = red;
+``
+does not have the desired effect, and nor does
+`cout << red << endl;`
+output the expected RGB(255,0,0) but instead 119 the value of the enum!]
+
+[h4 `svg_color` interface]
+
+You can define a `svg_color` using two different constructors:
+
+ // The parameters are red, green, and blue respectively.
+ svg_color(int, int, int);
+
+ // Use a pre-existing color constant.
+ svg_color(svg_color_constant);
+
+[important Any integer value is accepted but negative values are contrained 0, and positive values > 255 are constrained to 255.]
+
+[h4 Example of using `svg_color`]
+
+ using namespace boost::svg;
+
+ svg_color my_white(255, 255, 255); // RGB constructor.
+ svg_color const_white(white); // SVG defined named constructor.
+
+ BOOST_ASSERT(my_white == const_white);
+
+
+[note `svg_color`'s constructor takes in three integer values.
+The [@http://www.w3.org/TR/SVG11/types.html SVG 1.1 standard]
+allows any integer to represent an RGB value, with values less than 0
+and greater than 255 being constrained to their respective min and max.]
+
+[heading Colors Internals and Rationale]
+
+Constants are defined in an enum, `svg_color_constant`, in alphabetical order.
+[@..\..\..\..\boost\svg_plot\svg_color.hpp color constants].
+This facilitates quick lookup of their RGB values from an array. Anywhere
+that a `svg_color` can be used, a `svg_color_constant` can be used, as the
+conversion is implicit.
+
+All color information is stored in RGB format as three 'unsigned char' in a `svg_color` struct.
+The rationale for storing information in RGB format is because it is precise,
+and is always representable the exact same way.
+Storing a floating-point percent or fraction
+would introduce the possibility of undesirable rounding error.
+
+[endsect] [/section:color Color]
+

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/how_to_use.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/how_to_use.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,76 @@
+[section:howtouse How To Use This Documentation]
+
+* Tutorial pages are intended for those who do not know how to use the program.
+ * The pages that begin with the tag "Tutorial: Simple" are for absolute
+ beginners.
+ * "Tutorial: Full" should give the intermediate user a good
+ reference, as well as show how the program can be used
+ * "Tutorial: Special" shows other features/options that the headers
+ provide to the user.
+* The pages labelled "*Public Interface*" give reference information for
+their respective subjects. You can find all public methods (and data members,
+when structs are concerned) in these sections.
+* If you have a feature request, or if it appears that my implementation
+is in error, please check the [@svg_plot/todo.html To Do] page first, as well
+as the respective rationale section, if it exists. If I
+you do not find your idea/complaint, please reach me either through the Boost
+development list, or email me at jakevoytko (at) gmail (dot) com
+
+[heading Admonishments]
+
+[note These blocks typically go into more detail about an explanation given
+above.]
+[tip These blocks contain information that you may find helpful while coding.]
+[important These contain information that is imperative to understanding a
+concept.
+Failure to follow suggestions in these blocks will probably result in undesired behavior.
+Read all of these you find.]
+[warning It is imperative that you follow these. Failure to do so will lead to
+incorrect, and likely undesired, results in the plot.]
+
+And the first admonishment I will use is as follows:
+
+[important This is not (yet) a Boost library. It is a
+[@http://code.google.com/soc/2007/boost/about.html GSoC project]
+whose mentor organization is Boost.]
+
+[heading Preface]
+Humans have a fantastic capacity for visual understanding, and merely looking
+at data organized in one, two, or three dimensions allows us to see relations
+not otherwise visible in a list of numbers. Computers, however, deal with
+information numerically, and C++ and the
+[@http://en.wikipedia.org/wiki/Standard_Template_Library Standard Template Library (STL)]
+do not currently offer a way to bridge the gap.
+This library helps the user to easily plot data stored in STL containers.
+
+This project is focused on using STL containers in order to graph data on a
+one-dimensional and two-dimensional (and in future, perhaps, 3D) plot. The plot
+will currently be written to a
+[@http://en.wikipedia.org/wiki/Scalable_Vector_Graphics Scalable Vector Graphic image].
+
+[@http://www.w3.org/TR/SVG11/ Scalable Vector Graphics (SVG)] is an
+[@http://www.w3.org/TR/REC-xml/#sec-comments XML specification]
+and file format for describing two-dimensional vector graphics.
+
+SVG files (.svg) can be viewed with a browser like Mozilla Firefox (newer version),
+[@http://www.adobe.com/products/acrobat/readstep2.htmlAdobe Acrobat Reader],
+many other graphics program, and by Microsoft Internet Explorer,
+provided a suitable
+[@http://www.adobe.com/svg/ Adobe SVG Veiwer plug-in for SVG files] is installed.
+
+The goals of the project are:
+
+* To let users produce simple plots with minimal intervention by using sane
+defaults.
+* To allow users to easily customize plots.
+* To allow the user to talk to the plot classes using coordinate units
+rather than pixels or other arbitrary measures.
+* To create the backbone of a `svg` class that can be extended to fully support
+the standard.
+* compliance with the
+[@http://www.w3.org/TR/SVG11/ W3C Scalable vector Graph standard].
+
+[note Comments and suggestions to Jake Voytko
+at jakevoytko (at) gmail (dot) com]
+
+[endsect] [/section:howtouse How To Use This Documentation]

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/HTML.manifest
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/HTML.manifest (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/HTML.manifest 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -2,6 +2,7 @@
 svg_plot/howtouse.html
 svg_plot/todo.html
 svg_plot/color.html
+svg_plot/svg_tutorial.html
 svg_plot/tutorial_code_1d_simple.html
 svg_plot/tutorial_code_1d_simple/tutorial_code_1d_example.html
 svg_plot/tutorial_code_1d_simple/full_1d_layout.html
@@ -12,9 +13,11 @@
 svg_plot/tutorial_2d_code_simple/2d_special.html
 svg_plot/svg_boxplot_tutorial.html
 svg_plot/svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html
-svg_plot/svg_boxplot_tutorial/svg_boxplot_tutorial_full_layout.html
+svg_plot/svg_boxplot_tutorial/svg_boxplot_tutorial_full.html
+svg_plot/tutorial_stylesheet.html
 svg_plot/behavior.html
 svg_plot/behavior/behavior_limits.html
+svg_plot/behavior/behavior_stylesheets.html
 svg_plot/plot_defaults.html
 svg_plot/plot_defaults/1d_defaults.html
 svg_plot/plot_defaults/2d_defaults.html
@@ -23,4 +26,5 @@
 svg_plot/interface/svg_1d_plot_interface.html
 svg_plot/interface/svg_2d_plot_interface.html
 svg_plot/interface/svg_boxplot_interface.html
+svg_plot/implementation.html
 svg_plot/acknowledgements.html

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/index.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/index.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/index.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -3,32 +3,32 @@
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 <title>SVG_Plot</title>
 <link rel="stylesheet" href="../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="index.html" title="SVG_Plot">
-<link rel="next" href="svg_plot/howtouse.html" title=" How To Use This Documentation">
+<link rel="next" href="svg_plot/howtouse.html" title="How To Use This Documentation">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
-<div class="spirit-nav"><a accesskey="n" href="svg_plot/howtouse.html"><img src="../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a></div>
+<div class="spirit-nav"><a accesskey="n" href="svg_plot/howtouse.html"><img src="images/next.png" alt="Next"></a></div>
 <div class="article" lang="en">
 <div class="titlepage">
 <div>
 <div><h2 class="title">
 <a name="svg_plot"></a>SVG_Plot</h2></div>
-<div><div class="authorgroup"><div class="author"><h3 class="author">
+<div><div class="author"><h3 class="author">
 <span class="firstname">Jake</span> <span class="surname">Voytko</span>
-</h3></div></div></div>
+</h3></div></div>
 <div><p class="copyright">Copyright © 2007 Jake Voytko</p></div>
 <div><div class="legalnotice">
-<a name="id623859"></a><p>
+<a name="id345816"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -42,30 +42,23 @@
 <dt><span class="section"> How To Use This Documentation</span></dt>
 <dt><span class="section"> To Do List</span></dt>
 <dt><span class="section"> Colors</span></dt>
+<dt><span class="section"> SVG tutorial</span></dt>
 <dt><span class="section"> Tutorial: 1D</span></dt>
 <dd><dl>
-<dt><span class="section"><a href="svg_plot/tutorial_code_1d_simple/tutorial_code_1d_example.html">
- Simple 1D Example</a></span></dt>
-<dt><span class="section"><a href="svg_plot/tutorial_code_1d_simple/full_1d_layout.html"> Tutorial:
- 1D Full Layout Example</a></span></dt>
-<dt><span class="section"><a href="svg_plot/tutorial_code_1d_simple/1d_special.html"> Tutorial:
- 1D Special Features</a></span></dt>
+<dt><span class="section"> Simple 1D Example</span></dt>
+<dt><span class="section"> Tutorial: 1D Full Layout Example</span></dt>
+<dt><span class="section"> Tutorial: 1D Special Features</span></dt>
 </dl></dd>
 <dt><span class="section"> Tutorial: 2D</span></dt>
 <dd><dl>
-<dt><span class="section"><a href="svg_plot/tutorial_2d_code_simple/2d_simple_code_example.html">
- Simple Code Example</a></span></dt>
-<dt><span class="section"><a href="svg_plot/tutorial_2d_code_simple/full_2d_layout.html"> Tutorial:
- Fuller Layout Example</a></span></dt>
-<dt><span class="section"><a href="svg_plot/tutorial_2d_code_simple/2d_special.html"> Tutorial:
- 2D Special Features</a></span></dt>
+<dt><span class="section"> Simple Code Example</span></dt>
+<dt><span class="section"> Tutorial: Fuller Layout Example</span></dt>
+<dt><span class="section"> Tutorial: 2D Special Features</span></dt>
 </dl></dd>
 <dt><span class="section"> Tutorial: Boxplot</span></dt>
 <dd><dl>
-<dt><span class="section"><a href="svg_plot/svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html">
- Simple Example</a></span></dt>
-<dt><span class="section"><a href="svg_plot/svg_boxplot_tutorial/svg_boxplot_tutorial_full.html">
- Full Boxplot Layout</a></span></dt>
+<dt><span class="section"> Simple Example</span></dt>
+<dt><span class="section"> Full Boxplot Layout</span></dt>
 </dl></dd>
 <dt><span class="section"> Stylesheet Tutorial</span></dt>
 <dt><span class="section"> Behavior</span></dt>
@@ -75,18 +68,18 @@
 </dl></dd>
 <dt><span class="section"> Plot Defaults</span></dt>
 <dd><dl>
-<dt><span class="section"><a href="svg_plot/plot_defaults/1d_defaults.html"> <code class="computeroutput"><span class="identifier">svg_1d_plot</span></code>
- Defaults</a></span></dt>
-<dt><span class="section"><a href="svg_plot/plot_defaults/2d_defaults.html"> <code class="computeroutput"><span class="identifier">svg_2d_plot</span></code>
- Defaults</a></span></dt>
+<dt><span class="section"> svg_1d_plot Defaults</span></dt>
+<dt><span class="section"> svg_2d_plot Defaults</span></dt>
 </dl></dd>
 <dt><span class="section"> Public Interfaces</span></dt>
 <dd><dl>
-<dt><span class="section"><a href="svg_plot/interface/svg_interface.html"> <code class="computeroutput"><span class="identifier">svg</span></code>
- Public Interface</a></span></dt>
-<dt><span class="section"> svg_1d_plot Public Interface</span></dt>
-<dt><span class="section"> svg_2d_plot Public Interface</span></dt>
-<dt><span class="section"> svg_boxplot Public Interface</span></dt>
+<dt><span class="section"> svg Public Interface</span></dt>
+<dt><span class="section"><a href="svg_plot/interface/svg_1d_plot_interface.html"> <code class="computeroutput"><span class="identifier">svg_1d_plot</span></code> Public
+ Interface</a></span></dt>
+<dt><span class="section"><a href="svg_plot/interface/svg_2d_plot_interface.html"> <code class="computeroutput"><span class="identifier">svg_2d_plot</span></code> Public
+ Interface</a></span></dt>
+<dt><span class="section"><a href="svg_plot/interface/svg_boxplot_interface.html"> <code class="computeroutput"><span class="identifier">svg_boxplot</span></code> Public
+ Interface</a></span></dt>
 </dl></dd>
 <dt><span class="section"> Implementation & Rationale</span></dt>
 <dt><span class="section"> Acknowledgements</span></dt>
@@ -94,10 +87,10 @@
 </div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: November 13, 2007 at 12:10:52 GMT</small></p></td>
-<td align="right"><div class="copyright-footer"></div></td>
+<td align="left"><small><p>Last revised: January 08, 2008 at 04:29:17 GMT</p></small></td>
+<td align="right"><small></small></td>
 </tr></table>
 <hr>
-<div class="spirit-nav"><a accesskey="n" href="svg_plot/howtouse.html"><img src="../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a></div>
+<div class="spirit-nav"><a accesskey="n" href="svg_plot/howtouse.html"><img src="images/next.png" alt="Next"></a></div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/acknowledgements.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/acknowledgements.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/acknowledgements.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,30 +1,29 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Acknowledgements</title>
+<title>Acknowledgements</title>
 <link rel="stylesheet" href="../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../index.html" title="SVG_Plot">
 <link rel="up" href="../index.html" title="SVG_Plot">
-<link rel="prev" href="implementation.html" title=" Implementation &amp; Rationale">
+<link rel="prev" href="implementation.html" title="Implementation &amp; Rationale">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="implementation.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a>
+<a accesskey="p" href="implementation.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="svg_plot.acknowledgements"></a> Acknowledgements
-</h2></div></div></div>
+<a name="svg_plot.acknowledgements"></a> Acknowledgements</h2></div></div></div>
 <p>
       I would like to thank the following people:
     </p>
@@ -59,15 +58,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="implementation.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a>
+<a accesskey="p" href="implementation.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/behavior.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/behavior.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/behavior.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,31 +1,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Behavior</title>
+<title>Behavior</title>
 <link rel="stylesheet" href="../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../index.html" title="SVG_Plot">
 <link rel="up" href="../index.html" title="SVG_Plot">
-<link rel="prev" href="tutorial_stylesheet.html" title=" Stylesheet Tutorial">
-<link rel="next" href="behavior/behavior_limits.html" title=" Numerical Limits">
+<link rel="prev" href="tutorial_stylesheet.html" title="Stylesheet Tutorial">
+<link rel="next" href="behavior/behavior_limits.html" title="Numerical Limits">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="tutorial_stylesheet.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="behavior/behavior_limits.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="tutorial_stylesheet.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="behavior/behavior_limits.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="svg_plot.behavior"></a> Behavior
-</h2></div></div></div>
+<a name="svg_plot.behavior"></a> Behavior</h2></div></div></div>
 <div class="toc"><dl>
 <dt><span class="section"> Numerical Limits</span></dt>
 <dt><span class="section"> Stylesheets</span></dt>
@@ -33,15 +32,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="tutorial_stylesheet.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="behavior/behavior_limits.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="tutorial_stylesheet.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="behavior/behavior_limits.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/behavior/behavior_limits.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/behavior/behavior_limits.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/behavior/behavior_limits.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,31 +1,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Numerical Limits</title>
+<title>Numerical Limits</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../behavior.html" title=" Behavior">
-<link rel="prev" href="../behavior.html" title=" Behavior">
-<link rel="next" href="behavior_stylesheets.html" title=" Stylesheets">
+<link rel="up" href="../behavior.html" title="Behavior">
+<link rel="prev" href="../behavior.html" title="Behavior">
+<link rel="next" href="behavior_stylesheets.html" title="Stylesheets">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../behavior.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../behavior.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="behavior_stylesheets.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../behavior.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../behavior.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="behavior_stylesheets.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.behavior.behavior_limits"></a> Numerical Limits
-</h3></div></div></div>
+<a name="svg_plot.behavior.behavior_limits"></a> Numerical Limits</h3></div></div></div>
 <p>
         All limits that are dealt with are double precision floating-point limits.
         Limits are detected when data is added to the plot by the call to the <code class="computeroutput"><span class="identifier">plot</span><span class="special">()</span></code>
@@ -33,18 +32,15 @@
       </p>
 <p>
         Currently, the line interpolation algorithms do not take limits into account,
- so behavior may be incorrect for such plots as <code class="computeroutput"><span class="number">1</span>
- <span class="special">/</span> <span class="identifier">x</span></code>.
+ so behavior may be incorrect for such plots as <code class="computeroutput"><span class="number">1</span> <span class="special">/</span> <span class="identifier">x</span></code>.
       </p>
 <p>
- Data at the limits are drawn as a circle with <code class="computeroutput"><span class="identifier">_stroke_color</span>
- <span class="special">=</span> <span class="identifier">lightgray</span></code>
- and <code class="computeroutput"><span class="identifier">_fill_color</span> <span class="special">=</span>
- <span class="identifier">whitesmoke</span></code>. This will become customizable.
+ Data at the limits are drawn as a circle with <code class="computeroutput"><span class="identifier">_stroke_color</span> <span class="special">=</span> <span class="identifier">lightgray</span></code>
+ and <code class="computeroutput"><span class="identifier">_fill_color</span> <span class="special">=</span> <span class="identifier">whitesmoke</span></code>. This will become customizable.
       </p>
 <a name="svg_plot.behavior.behavior_limits.nan"></a><h5>
-<a name="id689250"></a>
- NaN
+<a name="id394930"></a>
+ NaN
       </h5>
 <p>
         Any double precision floating-point numbers that return a nonzero value for
@@ -53,8 +49,8 @@
         user-defined coordinates as 0.
       </p>
 <a name="svg_plot.behavior.behavior_limits.infinity"></a><h5>
-<a name="id689309"></a>
- Infinity
+<a name="id394971"></a>
+ Infinity
       </h5>
 <p>
         Any double precision floating point number that is equal to either of the
@@ -70,9 +66,8 @@
         appear at the top of the graph.
       </p>
 <a name="svg_plot.behavior.behavior_limits.negative_infinity"></a><h5>
-<a name="id689445"></a>
- <a href="behavior_limits.html#svg_plot.behavior.behavior_limits.negative_infinity">Negative
- Infinity</a>
+<a name="id395078"></a>
+ Negative Infinity
       </h5>
 <p>
         Any double precision floating point number that is equal to either of the
@@ -97,15 +92,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../behavior.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../behavior.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="behavior_stylesheets.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../behavior.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../behavior.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="behavior_stylesheets.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/behavior/behavior_stylesheets.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/behavior/behavior_stylesheets.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/behavior/behavior_stylesheets.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,31 +1,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Stylesheets</title>
+<title>Stylesheets</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../behavior.html" title=" Behavior">
-<link rel="prev" href="behavior_limits.html" title=" Numerical Limits">
-<link rel="next" href="../plot_defaults.html" title=" Plot Defaults">
+<link rel="up" href="../behavior.html" title="Behavior">
+<link rel="prev" href="behavior_limits.html" title="Numerical Limits">
+<link rel="next" href="../plot_defaults.html" title="Plot Defaults">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="behavior_limits.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../behavior.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../plot_defaults.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="behavior_limits.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../behavior.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../plot_defaults.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.behavior.behavior_stylesheets"></a> Stylesheets
-</h3></div></div></div>
+<a name="svg_plot.behavior.behavior_stylesheets"></a> Stylesheets</h3></div></div></div>
 <p>
         Stylesheets currently have only a single way of being used with the program:
         they are parsed by the <code class="computeroutput"><span class="identifier">svg</span></code>
@@ -69,18 +68,19 @@
       </p>
 <div class="caution"><table border="0" summary="Caution">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../../../../../../../../../trunk/doc/html/images/caution.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../images/caution.png"></td>
 <th align="left">Caution</th>
 </tr>
-<tr><td align="left" valign="top">
-<p>
+<tr><td align="left" valign="top"><p>
           Please note that the language that is accepted by the parser is actually
           stricter than the real CSS standard allows for. Following GSoC, the parser
           will be reimplemented to reflect the parser suggested by the CSS standard.
           All identifiers (class, ID, or otherwise), must be the <span class="bold"><strong>one
           and only</strong></span> identifier on the line. The following is not accepted:
-
-</p>
+ </p></td></tr>
+</table></div>
+<p>
+ </p>
 <pre class="programlisting">
 <span class="identifier">rect</span><span class="special">,</span> <span class="identifier">circle</span>
 <span class="special">{</span>
@@ -89,46 +89,38 @@
 <span class="special">}</span>
 </pre>
 <p>
- </p>
-<p>
- But the following is:
- </p>
+ But the following is:
+ </p>
 <p>
-
+
 </p>
 <pre class="programlisting">
 <span class="identifier">rect</span>
 <span class="special">{</span>
- <span class="identifier">fill</span> <span class="special">:</span> #<span class="number">00FF</span><span class="number">00</span><span class="special">;</span>
- <span class="identifier">stroke</span> <span class="special">:</span> #<span class="number">00FF</span><span class="number">00</span><span class="special">;</span>
+ <span class="identifier">fill</span> <span class="special">:</span> #<span class="number">00FF</span><span class="number">00</span><span class="special">;</span>
+ <span class="identifier">stroke</span> <span class="special">:</span> #<span class="number">00FF</span><span class="number">00</span><span class="special">;</span>
 <span class="special">}</span>
 
 <span class="identifier">circle</span>
 <span class="special">{</span>
- <span class="identifier">fill</span> <span class="special">:</span> #<span class="number">00FF</span><span class="number">00</span><span class="special">;</span>
- <span class="identifier">stroke</span> <span class="special">:</span> #<span class="number">00FF</span><span class="number">00</span><span class="special">;</span>
+ <span class="identifier">fill</span> <span class="special">:</span> #<span class="number">00FF</span><span class="number">00</span><span class="special">;</span>
+ <span class="identifier">stroke</span> <span class="special">:</span> #<span class="number">00FF</span><span class="number">00</span><span class="special">;</span>
 <span class="special">}</span>
 </pre>
 <p>
- </p>
+ </p>
 <p>
- None of the power of CSS is compromised (I believe), but it becomes more
- verbose.
- </p>
-</td></tr>
-</table></div>
+ None of the power of CSS is compromised (I believe), but it becomes more
+ verbose. ]
+ </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="behavior_limits.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../behavior.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../plot_defaults.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="behavior_limits.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../behavior.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../plot_defaults.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/color.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/color.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/color.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,41 +1,37 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Colors</title>
+<title>Colors</title>
 <link rel="stylesheet" href="../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../index.html" title="SVG_Plot">
 <link rel="up" href="../index.html" title="SVG_Plot">
-<link rel="prev" href="todo.html" title=" To Do List">
-<link rel="next" href="tutorial_code_1d_simple.html" title=" Tutorial: 1D">
+<link rel="prev" href="todo.html" title="To Do List">
+<link rel="next" href="svg_tutorial.html" title="SVG tutorial">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="todo.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tutorial_code_1d_simple.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="todo.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="svg_tutorial.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="svg_plot.color"></a> Colors
-</h2></div></div></div>
+<a name="svg_plot.color"></a> Colors</h2></div></div></div>
 <p>
       The project supports any <a href="http://en.wikipedia.org/wiki/RGB_color_model" target="_top">RGB
       color</a>, as well as a number of colors that are <a href="http://www.w3.org/TR/SVG/types.html#ColorKeywords" target="_top">named
       by the SVG standard</a>.
     </p>
-<a name="svg_plot.color._code__phrase_role__identifier__svg_color_constant__phrase___code_"></a><h4>
-<a name="id622212"></a>
- svg_color_constant
- </h4>
 <p>
+ [heading <code class="computeroutput"><span class="identifier">svg_color_constant</span></code>]
       <code class="computeroutput"><span class="identifier">svg_color_constant</span></code> is simply
       an enumerated list.
     </p>
@@ -57,9 +53,8 @@
       for defining defaults for functions, for example.
     </p>
 <a name="svg_plot.color.example_of_using__code__phrase_role__identifier__svg_color_constant__phrase___code_"></a><h5>
-<a name="id622335"></a>
- <a href="color.html#svg_plot.color.example_of_using__code__phrase_role__identifier__svg_color_constant__phrase___code_">Example
- of using <code class="computeroutput"><span class="identifier">svg_color_constant</span></code></a>
+<a name="id385510"></a>
+ Example of using <code class="computeroutput"><span class="identifier">svg_color_constant</span></code>
     </h5>
 <pre class="programlisting">
 <span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">svg</span><span class="special">;</span>
@@ -73,7 +68,7 @@
 </pre>
 <div class="note"><table border="0" summary="Note">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../../../../trunk/doc/html/images/note.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../images/note.png"></td>
 <th align="left">Note</th>
 </tr>
 <tr><td align="left" valign="top">
@@ -87,19 +82,17 @@
         overload, so
 </p>
 <pre class="programlisting">
-<span class="identifier">svg_color</span> <span class="identifier">my_color</span> <span class="special">=</span> <span class="identifier">red</span><span class="special">;</span>
+<span class="identifier">svg_color</span> <span class="identifier">my_color</span> <span class="special">=</span> <span class="identifier">red</span><span class="special">;</span>
 </pre>
 <p>
- does not have the desired effect, and nor does <code class="computeroutput"><span class="identifier">cout</span>
- <span class="special">&lt;&lt;</span> <span class="identifier">red</span>
- <span class="special">&lt;&lt;</span> <span class="identifier">endl</span><span class="special">;</span></code> output the expected RGB(255,0,0) but instead
+ does not have the desired effect, and nor does <code class="computeroutput"><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">red</span> <span class="special">&lt;&lt;</span> <span class="identifier">endl</span><span class="special">;</span></code> output the expected RGB(255,0,0) but instead
         119 the value of the enum!
       </p>
 </td></tr>
 </table></div>
 <a name="svg_plot.color._code__phrase_role__identifier__svg_color__phrase___code__interface"></a><h5>
-<a name="id678342"></a>
- svg_color interface
+<a name="id385821"></a>
+ <code class="computeroutput"><span class="identifier">svg_color</span></code> interface
     </h5>
 <p>
       You can define a <code class="computeroutput"><span class="identifier">svg_color</span></code>
@@ -114,7 +107,7 @@
 </pre>
 <div class="important"><table border="0" summary="Important">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../../../../../../../../trunk/doc/html/images/important.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../images/important.png"></td>
 <th align="left">Important</th>
 </tr>
 <tr><td align="left" valign="top"><p>
@@ -123,9 +116,8 @@
       </p></td></tr>
 </table></div>
 <a name="svg_plot.color.example_of_using__code__phrase_role__identifier__svg_color__phrase___code_"></a><h5>
-<a name="id678494"></a>
- <a href="color.html#svg_plot.color.example_of_using__code__phrase_role__identifier__svg_color__phrase___code_">Example
- of using <code class="computeroutput"><span class="identifier">svg_color</span></code></a>
+<a name="id385937"></a>
+ Example of using <code class="computeroutput"><span class="identifier">svg_color</span></code>
     </h5>
 <pre class="programlisting">
 <span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">svg</span><span class="special">;</span>
@@ -137,7 +129,7 @@
 </pre>
 <div class="note"><table border="0" summary="Note">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../../../../trunk/doc/html/images/note.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../images/note.png"></td>
 <th align="left">Note</th>
 </tr>
 <tr><td align="left" valign="top"><p>
@@ -148,11 +140,9 @@
         and max.
       </p></td></tr>
 </table></div>
-<a name="svg_plot.color.colors_internals_and_rationale"></a><h4>
-<a name="id678730"></a>
- <a href="color.html#svg_plot.color.colors_internals_and_rationale">Colors Internals
- and Rationale</a>
- </h4>
+<p>
+ [heading Colors Internals and Rationale]
+ </p>
 <p>
       Constants are defined in an enum, <code class="computeroutput"><span class="identifier">svg_color_constant</span></code>,
       in alphabetical order. <a href="../..%5C..%5C..%5C..%5Cboost%5Csvg_plot%5Csvg_color.hpp" target="_top">color
@@ -171,15 +161,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="todo.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tutorial_code_1d_simple.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="todo.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="svg_tutorial.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/howtouse.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/howtouse.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/howtouse.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,31 +1,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> How To Use This Documentation</title>
+<title>How To Use This Documentation</title>
 <link rel="stylesheet" href="../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../index.html" title="SVG_Plot">
 <link rel="up" href="../index.html" title="SVG_Plot">
 <link rel="prev" href="../index.html" title="SVG_Plot">
-<link rel="next" href="todo.html" title=" To Do List">
+<link rel="next" href="todo.html" title="To Do List">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="todo.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../index.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="todo.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="svg_plot.howtouse"></a> How To Use This Documentation
-</h2></div></div></div>
+<a name="svg_plot.howtouse"></a> How To Use This Documentation</h2></div></div></div>
 <div class="itemizedlist"><ul type="disc">
 <li>
         Tutorial pages are intended for those who do not know how to use the program.
@@ -57,13 +56,12 @@
         Boost development list, or email me at jakevoytko (at) gmail (dot) com
       </li>
 </ul></div>
-<a name="svg_plot.howtouse.admonishments"></a><h4>
-<a name="id667019"></a>
- Admonishments
- </h4>
+<p>
+ [heading Admonishments]
+ </p>
 <div class="note"><table border="0" summary="Note">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../../../../trunk/doc/html/images/note.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../images/note.png"></td>
 <th align="left">Note</th>
 </tr>
 <tr><td align="left" valign="top"><p>
@@ -72,7 +70,7 @@
 </table></div>
 <div class="tip"><table border="0" summary="Tip">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="../../../../../../../../../trunk/doc/html/images/tip.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="../images/tip.png"></td>
 <th align="left">Tip</th>
 </tr>
 <tr><td align="left" valign="top"><p>
@@ -81,7 +79,7 @@
 </table></div>
 <div class="important"><table border="0" summary="Important">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../../../../../../../../trunk/doc/html/images/important.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../images/important.png"></td>
 <th align="left">Important</th>
 </tr>
 <tr><td align="left" valign="top"><p>
@@ -92,7 +90,7 @@
 </table></div>
 <div class="warning"><table border="0" summary="Warning">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="../../../../../../../../../trunk/doc/html/images/warning.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="../images/warning.png"></td>
 <th align="left">Warning</th>
 </tr>
 <tr><td align="left" valign="top"><p>
@@ -105,7 +103,7 @@
     </p>
 <div class="important"><table border="0" summary="Important">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../../../../../../../../trunk/doc/html/images/important.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../images/important.png"></td>
 <th align="left">Important</th>
 </tr>
 <tr><td align="left" valign="top"><p>
@@ -113,15 +111,11 @@
         project</a> whose mentor organization is Boost.
       </p></td></tr>
 </table></div>
-<a name="svg_plot.howtouse.preface"></a><h4>
-<a name="id667101"></a>
- Preface
- </h4>
-<p>
- Humans have a fantastic capacity for visual understanding, and merely looking
- at data organized in one, two, or three dimensions allows us to see relations
- not otherwise visible in a list of numbers. Computers, however, deal with information
- numerically, and C++ and the <a href="http://en.wikipedia.org/wiki/Standard_Template_Library" target="_top">Standard
+<p>
+ [heading Preface] Humans have a fantastic capacity for visual understanding,
+ and merely looking at data organized in one, two, or three dimensions allows
+ us to see relations not otherwise visible in a list of numbers. Computers,
+ however, deal with information numerically, and C++ and the <a href="http://en.wikipedia.org/wiki/Standard_Template_Library" target="_top">Standard
       Template Library (STL)</a> do not currently offer a way to bridge the gap.
       This library helps the user to easily plot data stored in STL containers.
     </p>
@@ -169,7 +163,7 @@
 </ul></div>
 <div class="note"><table border="0" summary="Note">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../../../../trunk/doc/html/images/note.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../images/note.png"></td>
 <th align="left">Note</th>
 </tr>
 <tr><td align="left" valign="top"><p>
@@ -179,15 +173,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="todo.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../index.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="todo.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,52 +1,47 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Public Interfaces</title>
+<title>Public Interfaces</title>
 <link rel="stylesheet" href="../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../index.html" title="SVG_Plot">
 <link rel="up" href="../index.html" title="SVG_Plot">
-<link rel="prev" href="plot_defaults/2d_defaults.html" title=" svg_2d_plot
- Defaults">
-<link rel="next" href="interface/svg_interface.html" title=" svg
- Public Interface">
+<link rel="prev" href="plot_defaults/2d_defaults.html" title="svg_2d_plot Defaults">
+<link rel="next" href="interface/svg_interface.html" title="svg Public Interface">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="plot_defaults/2d_defaults.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="interface/svg_interface.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="plot_defaults/2d_defaults.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="interface/svg_interface.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="svg_plot.interface"></a> Public Interfaces
-</h2></div></div></div>
+<a name="svg_plot.interface"></a> Public Interfaces</h2></div></div></div>
 <div class="toc"><dl>
-<dt><span class="section"><a href="interface/svg_interface.html"> <code class="computeroutput"><span class="identifier">svg</span></code>
- Public Interface</a></span></dt>
-<dt><span class="section"> svg_1d_plot Public Interface</span></dt>
-<dt><span class="section"> svg_2d_plot Public Interface</span></dt>
-<dt><span class="section"> svg_boxplot Public Interface</span></dt>
+<dt><span class="section"> svg Public Interface</span></dt>
+<dt><span class="section"><a href="interface/svg_1d_plot_interface.html"> <code class="computeroutput"><span class="identifier">svg_1d_plot</span></code> Public
+ Interface</a></span></dt>
+<dt><span class="section"><a href="interface/svg_2d_plot_interface.html"> <code class="computeroutput"><span class="identifier">svg_2d_plot</span></code> Public
+ Interface</a></span></dt>
+<dt><span class="section"><a href="interface/svg_boxplot_interface.html"> <code class="computeroutput"><span class="identifier">svg_boxplot</span></code> Public
+ Interface</a></span></dt>
 </dl></div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="plot_defaults/2d_defaults.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="interface/svg_interface.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="plot_defaults/2d_defaults.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="interface/svg_interface.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_1d_plot_interface.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_1d_plot_interface.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_1d_plot_interface.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,771 +1,362 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> svg_1d_plot Public Interface</title>
+<title>svg_1d_plot Public Interface</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../interface.html" title=" Public Interfaces">
-<link rel="prev" href="svg_interface.html" title=" svg
- Public Interface">
-<link rel="next" href="svg_2d_plot_interface.html" title=" svg_2d_plot Public Interface">
+<link rel="up" href="../interface.html" title="Public Interfaces">
+<link rel="prev" href="svg_interface.html" title="svg Public Interface">
+<link rel="next" href="svg_2d_plot_interface.html" title="svg_2d_plot Public Interface">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="svg_interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="svg_2d_plot_interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="svg_interface.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="svg_2d_plot_interface.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.interface.svg_1d_plot_interface"></a> svg_1d_plot Public Interface
-</h3></div></div></div>
-<div class="table">
-<a name="id694572"></a><p class="title"><b>Table 4. 1D_plot Miscellaneous Functions</b></p>
-<div class="table-contents"><table class="table" summary="1D_plot Miscellaneous Functions">
+<a name="svg_plot.interface.svg_1d_plot_interface"></a> <code class="computeroutput"><span class="identifier">svg_1d_plot</span></code> Public
+ Interface</h3></div></div></div>
+<div class="informaltable">
+<h5>
+<a name="id399305"></a>
+ <span class="table-title">1D_plot Miscellaneous Functions</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">()</span></code>
- </p>
- </td>
-<td>
- <p>
- See the defaults section for further details
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">image_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">unsigned</span>
- <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the size of the image produced (pixels)
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">coord_precision</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the precision output for coordinates (decimal digits, default
- 3).
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">document_title</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets title for the SVG XML document (not the plot). &lt;title&gt;My
- Document title&lt;/title&gt;
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">description</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets description for the SVG XML document, as comment and XML, for
- example: &lt;!-- My Document description --&gt; &lt;desc&gt;My Document
- description&lt;/desc&gt;
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">legend_title_font_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the font size for the legend title.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">title</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the string to be used for the title.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">title_font_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the font size for the title.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">write</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code>
- </p>
- </td>
-<td>
- <p>
- Writes the plot to the file passed as a parameter.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">write</span><span class="special">(</span><span class="identifier">ostream</span><span class="special">&amp;)</span></code>
- </p>
- </td>
-<td>
- <p>
- Writes the plot to a stream passed as a parameter.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">()</span></code></td>
+<td>See the defaults section
+ for further details</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">image_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the size of the
+ image produced (pixels)</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">coord_precision</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the precision output
+ for coordinates (decimal digits, default 3).</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">document_title</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code></td>
+<td>Sets title for the SVG
+ XML document (not the plot). &lt;title&gt;My Document title&lt;/title&gt;</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">description</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code></td>
+<td>Sets description for
+ the SVG XML document, as comment and XML, for example: &lt;!-- My Document
+ description --&gt; &lt;desc&gt;My Document description&lt;/desc&gt;</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">legend_title_font_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the font size for the legend title.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">title</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code></td>
+<td>Sets
+ the string to be used for the title.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">title_font_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the font size for the title.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">write</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code></td>
+<td>Writes
+ the plot to the file passed as a parameter.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">write</span><span class="special">(</span><span class="identifier">ostream</span><span class="special">&amp;)</span></code></td>
+<td>Writes the plot
+ to a stream passed as a parameter.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id695258"></a><p class="title"><b>Table 5. 1D_plot Commands</b></p>
-<div class="table-contents"><table class="table" summary="1D_plot Commands">
+<div class="informaltable">
+<h5>
+<a name="id399806"></a>
+ <span class="table-title">1D_plot Commands</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">axis_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets whether the axis is on (true) or off.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">legend_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets whether the legend is on (true) or off.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">plot_window_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets whether the plot will be displayed in its own window, or will
- be "full screen" in the image.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">title_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Determines whether or not the image title is displayed.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_axis_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Determines whether or not the X-axis is displayed.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_external_style_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Determines whether or not the axis is inside or outside of the plot.
- Defaults is <code class="computeroutput"><span class="keyword">false</span></code>.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_label_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets whether or not the X-axis label will show
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_labels_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- sets whether or not the major ticks will be labelled on the X-axis
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_grid_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Determines whether or not the major grid on the X axis will be displayed.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_minor_grid_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Determines whether or not the minor grid on the X axis will be displayed.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_axis_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Determines whether or not the Y axis is displayed.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">axis_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Sets whether the axis
+ is on (true) or off.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">legend_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Sets whether the legend
+ is on (true) or off.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">plot_window_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Sets whether the plot
+ will be displayed in its own window, or will be "full screen"
+ in the image.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">title_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Determines whether or
+ not the image title is displayed.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_axis_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Determines whether or
+ not the X-axis is displayed.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_external_style_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Determines whether or
+ not the axis is inside or outside of the plot. Defaults is <code class="computeroutput"><span class="keyword">false</span></code>.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_label_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Sets whether or not
+ the X-axis label will show</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_labels_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>sets whether or not
+ the major ticks will be labelled on the X-axis</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_grid_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Determines whether or
+ not the major grid on the X axis will be displayed.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_minor_grid_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Determines whether or
+ not the minor grid on the X axis will be displayed.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">y_axis_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Determines whether or
+ not the Y axis is displayed.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id695947"></a><p class="title"><b>Table 6. 1D_plot Colors</b></p>
-<div class="table-contents"><table class="table" summary="1D_plot Colors">
+<div class="informaltable">
+<h5>
+<a name="id400297"></a>
+ <span class="table-title">1D_plot Colors</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">background_border_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the background border color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
- an RGB color.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the background color for the whole image.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">legend_background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the background color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
- an RGB color.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">legend_border_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the border color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
- an RGB color.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">plot_background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the color of the plot area. Note: this only goes into effect if
- plot_area(true) has been called.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">title_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the title color.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_axis_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the lines that form the axis.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_label_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the labels that go along the X axis.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_grid_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the grid that runs perpindicular to the X axis.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the major ticks of the x-axis.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_minor_grid_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the minor grid of the x-axis
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_minor_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the minor ticks of the x-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">background_border_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the background border color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
+ an RGB color.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the background color for the whole image.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">legend_background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the background color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
+ an RGB color.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">legend_border_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the border color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
+ an RGB color.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">plot_background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the color of the plot area. Note: this only goes into effect if plot_area(true)
+ has been called.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">title_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the title color.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_axis_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the lines that form the axis.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_label_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the labels that go along the X axis.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_grid_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the grid that runs perpindicular to the X axis.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the major ticks of the x-axis.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_minor_grid_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the minor grid of the x-axis</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_minor_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the minor ticks of the x-axis.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id696934"></a><p class="title"><b>Table 7. 1D_plot X-Axis Definition</b></p>
-<div class="table-contents"><table class="table" summary="1D_plot X-Axis Definition">
+<div class="informaltable">
+<h5>
+<a name="id401042"></a>
+ <span class="table-title">1D_plot X-Axis Definition</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_axis_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the stroke width of the x-axis.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_label</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the label of the x-axis. This does not guarantee that it will
- be shown. You must call <code class="computeroutput"><span class="identifier">x_label_on</span><span class="special">(</span><span class="keyword">true</span><span class="special">)</span></code> to display.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_interval</span><span class="special">(</span><span class="keyword">double</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the distance (in Cartesian units) between ticks on the x-axis.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the length (pixels) of the x-axis major ticks.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the width (pixels) of the major ticks on the x-axis.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_minor_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the length (pixels) of the x-axis minor tick lengths.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_minor_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the width (pixels) of the minor ticks on the x-axis.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_num_minor_ticks</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the number of minor ticks between each major tick.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_range</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">x1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">x2</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the scale of the x axis from x1 to x2. Throws an exception if
- x2&lt;=x1.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_axis_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the stroke width of the x-axis.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_label</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code></td>
+<td>Sets
+ the label of the x-axis. This does not guarantee that it will be shown.
+ You must call <code class="computeroutput"><span class="identifier">x_label_on</span><span class="special">(</span><span class="keyword">true</span><span class="special">)</span></code> to display.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_interval</span><span class="special">(</span><span class="keyword">double</span><span class="special">)</span></code></td>
+<td>Sets the distance (in
+ Cartesian units) between ticks on the x-axis.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the length (pixels)
+ of the x-axis major ticks.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the width (pixels) of the major ticks on the x-axis.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_minor_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the length (pixels)
+ of the x-axis minor tick lengths.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_minor_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the width (pixels) of the minor ticks on the x-axis.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_num_minor_ticks</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the number of minor
+ ticks between each major tick.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg_1d_plot</span><span class="special">&amp;</span> <span class="identifier">x_range</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">x1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">x2</span><span class="special">)</span></code></td>
+<td>Sets the scale of the
+ x axis from x1 to x2. Throws an exception if x2&lt;=x1. </td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><a name="svg_plot.interface.svg_1d_plot_interface.the_1d_plot__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method"></a><h5>
-<a name="id697597"></a>
- <a href="svg_1d_plot_interface.html#svg_plot.interface.svg_1d_plot_interface.the_1d_plot__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method">The
- 1D_plot <code class="computeroutput"><span class="identifier">plot</span><span class="special">()</span></code>
- Method</a>
- </h5>
 <p>
- The <code class="computeroutput"><span class="identifier">plot</span><span class="special">()</span></code>
- method is defined using Boost.Parameter. As such, it supports a few extra
- named parameters, as well as a deduced parameter.
+ [heading The 1D_plot <code class="computeroutput"><span class="identifier">plot</span><span class="special">()</span></code> Method] The <code class="computeroutput"><span class="identifier">plot</span><span class="special">()</span></code> method is defined using Boost.Parameter.
+ As such, it supports a few extra named parameters, as well as a deduced parameter.
       </p>
-<div class="table">
-<a name="id697655"></a><p class="title"><b>Table 8. 1D_plot Required parameter</b></p>
-<div class="table-contents"><table class="table" summary="1D_plot Required parameter">
+<div class="informaltable">
+<h5>
+<a name="id401551"></a>
+ <span class="table-title">1D_plot Required parameter</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- ID
- </p>
- </th>
-<th>
- <p>
- Type (* is a wildcard)
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>ID</th>
+<th>Type (* is a wildcard)</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- _container
- </p>
- </td>
-<td>
- <p>
- *
- </p>
- </td>
-<td>
- <p>
- Any object that can return an iterator with begin() and end()
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- _title
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span></code>
- </p>
- </td>
-<td>
- <p>
- The name of this data series.
- </p>
- </td>
+<td>_container</td>
+<td>*</td>
+<td>Any object that can
+ return an iterator with begin() and end()</td>
+</tr>
+<tr>
+<td>_title</td>
+<td><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span></code></td>
+<td>The
+ name of this data series.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id697777"></a><p class="title"><b>Table 9. 1D_plot Deduced parameter</b></p>
-<div class="table-contents"><table class="table" summary="1D_plot Deduced parameter">
+<div class="informaltable">
+<h5>
+<a name="id401630"></a>
+ <span class="table-title">1D_plot Deduced parameter</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
@@ -773,55 +364,27 @@
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- ID
- </p>
- </th>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-<th>
- <p>
- Default
- </p>
- </th>
+<th>ID</th>
+<th>Type</th>
+<th>Description</th>
+<th>Default</th>
 </tr></thead>
 <tbody><tr>
-<td>
- <p>
- _fill_color
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_color</span></code>
- </p>
- </td>
-<td>
- <p>
- Color that shows <span class="bold"><strong>inside the circle</strong></span>
- being drawn.
- </p>
- </td>
-<td>
- <p>
- white
- </p>
- </td>
+<td>_fill_color</td>
+<td><code class="computeroutput"><span class="identifier">svg_color</span></code></td>
+<td>Color
+ that shows <span class="bold"><strong>inside the circle</strong></span> being
+ drawn.</td>
+<td>white</td>
 </tr></tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id697883"></a><p class="title"><b>Table 10. 1D_plot Optional Parameters</b></p>
-<div class="table-contents"><table class="table" summary="1D_plot Optional Parameters">
+<div class="informaltable">
+<h5>
+<a name="id401698"></a>
+ <span class="table-title">1D_plot Optional Parameters</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
@@ -829,151 +392,73 @@
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- ID
- </p>
- </th>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-<th>
- <p>
- Default
- </p>
- </th>
+<th>ID</th>
+<th>Type</th>
+<th>Description</th>
+<th>Default</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- _stroke_color
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_color</span></code>
- </p>
- </td>
-<td>
- <p>
- Outline of the circle that is being drawn.
- </p>
- </td>
-<td>
- <p>
- black
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- _point_style
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">point_shape</span></code>
- </p>
- </td>
-<td>
- <p>
- Shape of the point. Options currently are: <code class="literal">none</code>,
- <code class="literal">circle</code>, and <code class="literal">square</code>.
- </p>
- </td>
-<td>
- <p>
- circle
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- _size
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">unsigned</span> <span class="keyword">int</span></code>
- </p>
- </td>
-<td>
- <p>
- Height/width of the circle and square.
- </p>
- </td>
-<td>
- <p>
- 10
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- _x_functor
- </p>
- </td>
-<td>
- <p>
- *
- </p>
- </td>
-<td>
- <p>
- A class or functor that contains a conversion function. You will not
- have to worry about this, unless you are trying to plot a container
- of type that does not have a conversion to double, for example, age
- of a user-defined type <code class="computeroutput"><span class="identifier">humans</span></code>.
- For example:
-</p>
-<pre class="programlisting">
-<span class="keyword">class</span> <span class="identifier">my_functor</span>
+<td>_stroke_color</td>
+<td><code class="computeroutput"><span class="identifier">svg_color</span></code></td>
+<td>Outline
+ of the circle that is being drawn.</td>
+<td>black</td>
+</tr>
+<tr>
+<td>_point_style</td>
+<td><code class="computeroutput"><span class="identifier">point_shape</span></code></td>
+<td>Shape
+ of the point. Options currently are: <code class="literal">none</code>, <code class="literal">circle</code>,
+ and <code class="literal">square</code>.</td>
+<td>circle</td>
+</tr>
+<tr>
+<td>_size</td>
+<td><code class="computeroutput"><span class="keyword">unsigned</span> <span class="keyword">int</span></code></td>
+<td>Height/width of the
+ circle and square.</td>
+<td>10</td>
+</tr>
+<tr>
+<td>_x_functor</td>
+<td>*</td>
+<td>A class or functor
+ that contains a conversion function. You will not have to worry about
+ this, unless you are trying to plot a container of type that does not
+ have a conversion to double, for example, age of a user-defined type
+ <code class="computeroutput"><span class="identifier">humans</span></code>. For example:
+
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting">
+<span class="keyword">class</span> <span class="identifier">my_functor</span>
 <span class="special">{</span>
- <span class="identifier">typdef</span> <span class="keyword">double</span> <span class="identifier">result_type</span><span class="special">;</span>
+ <span class="identifier">typdef</span> <span class="keyword">double</span> <span class="identifier">result_type</span><span class="special">;</span>
 
- <span class="keyword">double</span> <span class="keyword">operator</span><span class="special">()(</span><span class="keyword">const</span> <span class="identifier">human</span><span class="special">&amp;</span> <span class="identifier">_hum</span><span class="special">)</span>
+ <span class="keyword">double</span> <span class="keyword">operator</span><span class="special">()(</span><span class="keyword">const</span> <span class="identifier">human</span><span class="special">&amp;</span> <span class="identifier">_hum</span><span class="special">)</span>
   <span class="special">{</span>
- <span class="keyword">return</span> <span class="special">(</span><span class="keyword">double</span><span class="special">)(</span><span class="identifier">_hum</span><span class="special">.</span><span class="identifier">age</span><span class="special">());</span>
+ <span class="keyword">return</span> <span class="special">(</span><span class="keyword">double</span><span class="special">)(</span><span class="identifier">_hum</span><span class="special">.</span><span class="identifier">age</span><span class="special">());</span>
   <span class="special">}</span>
 <span class="special">}</span>
 
 <span class="comment">// ...
 </span>
-<span class="identifier">plot</span><span class="special">(</span><span class="identifier">my_plot</span><span class="special">,</span> <span class="identifier">my_data</span><span class="special">,</span> <span class="string">"Lions"</span><span class="special">,</span> <span class="identifier">_x_functor</span> <span class="special">=</span> <span class="identifier">my_functor</span><span class="special">());</span>
+<span class="identifier">plot</span><span class="special">(</span><span class="identifier">my_plot</span><span class="special">,</span> <span class="identifier">my_data</span><span class="special">,</span> <span class="string">"Lions"</span><span class="special">,</span> <span class="identifier">_x_functor</span> <span class="special">=</span> <span class="identifier">my_functor</span><span class="special">());</span>
 </pre>
-<p>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">boost_default_convert</span></code>
+ </td>
+<td> <code class="computeroutput"><span class="identifier">boost_default_convert</span></code>
               is sufficient in all cases where the data stored in the container can
- be directly cast to a <code class="computeroutput"><span class="keyword">double</span></code>.
- </p>
- </td>
+ be directly cast to a <code class="computeroutput"><span class="keyword">double</span></code>.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><p>
+<p>
         Here are some examples of using of the 1D_plot <code class="computeroutput"><span class="identifier">plot</span></code>
         method:
       </p>
 <a name="svg_plot.interface.svg_1d_plot_interface.using_1d_plot_fill_and_stroke_colors"></a><h5>
-<a name="id698436"></a>
- <a href="svg_1d_plot_interface.html#svg_plot.interface.svg_1d_plot_interface.using_1d_plot_fill_and_stroke_colors">Using
- 1D_plot fill and stroke colors</a>
+<a name="id402096"></a>
+ Using 1D_plot fill and stroke colors
       </h5>
 <pre class="programlisting">
 <span class="identifier">my_plot</span><span class="special">.</span><span class="identifier">plot</span><span class="special">(</span><span class="identifier">my_data</span><span class="special">,</span> <span class="string">"Lions"</span><span class="special">,</span>
@@ -1003,15 +488,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="svg_interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="svg_2d_plot_interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="svg_interface.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="svg_2d_plot_interface.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_2d_plot_interface.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_2d_plot_interface.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_2d_plot_interface.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,915 +1,420 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> svg_2d_plot Public Interface</title>
+<title>svg_2d_plot Public Interface</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../interface.html" title=" Public Interfaces">
-<link rel="prev" href="svg_1d_plot_interface.html" title=" svg_1d_plot Public Interface">
-<link rel="next" href="svg_boxplot_interface.html" title=" svg_boxplot Public Interface">
+<link rel="up" href="../interface.html" title="Public Interfaces">
+<link rel="prev" href="svg_1d_plot_interface.html" title="svg_1d_plot Public Interface">
+<link rel="next" href="svg_boxplot_interface.html" title="svg_boxplot Public Interface">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="svg_1d_plot_interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="svg_boxplot_interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="svg_1d_plot_interface.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="svg_boxplot_interface.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.interface.svg_2d_plot_interface"></a> svg_2d_plot Public Interface
-</h3></div></div></div>
-<div class="table">
-<a name="id698786"></a><p class="title"><b>Table 11. 2D_plot Miscellaneous</b></p>
-<div class="table-contents"><table class="table" summary="2D_plot Miscellaneous">
+<a name="svg_plot.interface.svg_2d_plot_interface"></a> <code class="computeroutput"><span class="identifier">svg_2d_plot</span></code> Public
+ Interface</h3></div></div></div>
+<div class="informaltable">
+<h5>
+<a name="id402384"></a>
+ <span class="table-title">2D_plot Miscellaneous</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">()</span></code>
- </p>
- </td>
-<td>
- <p>
- See the defaults section for further details.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">()</span></code></td>
+<td>See the defaults section
+ for further details.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">image_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">unsigned</span>
- <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the size (pixels) of the plot image produced.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">image_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the size (pixels)
+ of the plot image produced.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">title</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the string to be used for the title.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">title</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code></td>
+<td>Sets
+ the string to be used for the title.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">title_font_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the font size for the title.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">title_font_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the font size for the title.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">legend_title_font_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the font size for the legend title.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">legend_title_font_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the font size for the legend title.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id699143"></a><p class="title"><b>Table 12. 2D_plot Commands</b></p>
-<div class="table-contents"><table class="table" summary="2D_plot Commands">
+<div class="informaltable">
+<h5>
+<a name="id402651"></a>
+ <span class="table-title">2D_plot Commands</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">axis_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets whether the axis is on (true) or off.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">axis_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Sets whether the axis
+ is on (true) or off.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">legend_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets whether the legend is on (true) or off.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">legend_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Sets whether the legend
+ is on (true) or off.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">plot_window_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets whether the plot will be displayed in its own window, or will
- be "full screen" in the image.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">plot_window_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Sets whether the plot
+ will be displayed in its own window, or will be "full screen"
+ in the image.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">title_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Determines whether or not the image title is displayed.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">title_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Determines whether or
+ not the image title is displayed.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_label_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets whether or not the X axis label will show.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_label_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Sets whether or not
+ the X axis label will show.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_grid_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Determines whether or not the major grid on the X axis will be displayed.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_grid_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Determines whether or
+ not the major grid on the X axis will be displayed.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_labels_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- sets whether or not the major ticks will be labelled on the x axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_labels_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>sets whether or not
+ the major ticks will be labelled on the x axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_minor_grid_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Determines whether or not the minor grid on the X axis will be displayed.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_minor_grid_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Determines whether or
+ not the minor grid on the X axis will be displayed.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_label_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets whether or not the Y axis label will show.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_label_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Sets whether or not
+ the Y axis label will show.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_grid_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Determines whether or not the major grid on the Y axis will be displayed.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_major_grid_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Determines whether or
+ not the major grid on the Y axis will be displayed.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_labels_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- sets whether or not the major ticks will be labelled on the Y axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_major_labels_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>sets whether or not
+ the major ticks will be labelled on the Y axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_minor_grid_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Determines whether or not the minor grid on the Y axis will be displayed.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_minor_grid_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Determines whether or
+ not the minor grid on the Y axis will be displayed.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id699878"></a><p class="title"><b>Table 13. 2D_plot Colors</b></p>
-<div class="table-contents"><table class="table" summary="2D_plot Colors">
+<div class="informaltable">
+<h5>
+<a name="id403172"></a>
+ <span class="table-title">2D_plot Colors</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">title_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the plot title color.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">title_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the plot title color.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the background color for the whole image.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the background color for the whole image.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">legend_background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the background color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
- an RGB color.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">legend_background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the background color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
+ an RGB color.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">legend_border_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the border color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
- an RGB color.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">legend_border_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the border color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
+ an RGB color.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">background_border_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the background border color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
- an RGB color.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">background_border_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the background border color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
+ an RGB color.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">plot_background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the color of the plot area. Note: this only goes into effect if
- plot_area(true) has been called.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">plot_background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the color of the plot area. Note: this only goes into effect if plot_area(true)
+ has been called.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_axis_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the lines that form the axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_axis_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the lines that form the axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_label_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the labels that go along the X axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_label_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the labels that go along the X axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the major ticks of the x-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the major ticks of the x-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_grid_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the grid that runs perpindicular to the X axis
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_grid_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the grid that runs perpindicular to the X axis</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_minor_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the minor ticks of the x-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_minor_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the minor ticks of the x-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_axis_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the lines that form the Y axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_axis_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the lines that form the Y axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_label_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the labels that go along the Y axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_label_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the labels that go along the Y axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the major ticks of the Y-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_major_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the major ticks of the Y-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_grid_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the grid that runs perpindicular to the Y axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_major_grid_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the grid that runs perpindicular to the Y axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_minor_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the minor ticks of the Y-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_minor_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the minor ticks of the Y-axis.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id701166"></a><p class="title"><b>Table 14. 2D_plot Axis Information</b></p>
-<div class="table-contents"><table class="table" summary="2D_plot Axis Information">
+<div class="informaltable">
+<h5>
+<a name="id404144"></a>
+ <span class="table-title">2D_plot Axis Information</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_axis_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the stroke width (pixels) of the x-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_axis_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the stroke width (pixels) of the x-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_label</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the label of the x-axis. You must set <code class="computeroutput"><span class="identifier">x_label</span><span class="special">(</span><span class="keyword">true</span><span class="special">)</span></code> to display the label.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_label</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code></td>
+<td>Sets
+ the label of the x-axis. You must set <code class="computeroutput"><span class="identifier">x_label</span><span class="special">(</span><span class="keyword">true</span><span class="special">)</span></code> to display the label.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_interval</span><span class="special">(</span><span class="keyword">double</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the distance (Cartesian units) between ticks on the x-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_interval</span><span class="special">(</span><span class="keyword">double</span><span class="special">)</span></code></td>
+<td>Sets the distance (Cartesian
+ units) between ticks on the x-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the length (pixels) of the x-axis major ticks.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the length (pixels)
+ of the x-axis major ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_major_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the width (pixels) of the major ticks on the x-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_major_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the width (pixels) of the major ticks on the x-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_minor_tick</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the length (pixels) of the x-axis minor ticks.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_minor_tick</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the length (pixels) of the x-axis minor ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_minor_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the length (pixels) of the x-axis minor tick lengths.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_minor_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the length (pixels)
+ of the x-axis minor tick lengths.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_minor_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the width (pixels) of the minor ticks on the x-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_minor_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the width (pixels) of the minor ticks on the x-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_num_minor_ticks</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the number of minor ticks between each major tick.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_num_minor_ticks</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the number of minor
+ ticks between each major tick.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">x_range</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">x1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">x2</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the scale of the x axis from x1 to x2. Throws an exception if
- x2 &lt;= x1.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">x_range</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">x1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">x2</span><span class="special">)</span></code></td>
+<td>Sets the scale of the
+ x axis from x1 to x2. Throws an exception if x2 &lt;= x1.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_axis_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the stroke width of the x-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_axis_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the stroke width of the x-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_label</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the label of the Y-axis. You must set <code class="computeroutput"><span class="identifier">x_label</span><span class="special">(</span><span class="keyword">true</span><span class="special">)</span></code> to display the label.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_label</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code></td>
+<td>Sets
+ the label of the Y-axis. You must set <code class="computeroutput"><span class="identifier">x_label</span><span class="special">(</span><span class="keyword">true</span><span class="special">)</span></code> to display the label.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_tick</span><span class="special">(</span><span class="keyword">double</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the distance (in Cartesian units) between ticks on the Y axis
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_major_tick</span><span class="special">(</span><span class="keyword">double</span><span class="special">)</span></code></td>
+<td>Sets the distance (in
+ Cartesian units) between ticks on the Y axis</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the length (pixels) of the Y axis major ticks.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_major_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the length (pixels)
+ of the Y axis major ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the width (pixels) of the major ticks on the Y axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_major_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the width (pixels) of the major ticks on the Y axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_minor_tick</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the length (pixels) of the Y axis minor ticks.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_minor_tick</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the length (pixels) of the Y axis minor ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the length (pixels) of the Y axis minor tick lengths.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_major_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the length (pixels)
+ of the Y axis minor tick lengths.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_minor_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the width (pixels) of the minor ticks on the Y axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_minor_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the width (pixels) of the minor ticks on the Y axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_num_minor_ticks</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the number of minor ticks between each major tick.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_num_minor_ticks</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the number of minor
+ ticks between each major tick.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span>
- <span class="identifier">y_scale</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">y1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y2</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the scale of the Y axis from y1 to y2. Throws an exception if
- y2 &lt;= y1.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_2d_plot</span><span class="special">&amp;</span> <span class="identifier">y_scale</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">y1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y2</span><span class="special">)</span></code></td>
+<td>Sets the scale of the
+ Y axis from y1 to y2. Throws an exception if y2 &lt;= y1.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><p>
+<p>
         (Note: Getters omitted for now. TODO)
       </p>
-<a name="svg_plot.interface.svg_2d_plot_interface.the__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method"></a><h5>
-<a name="id702566"></a>
- <a href="svg_2d_plot_interface.html#svg_plot.interface.svg_2d_plot_interface.the__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method">The
- <code class="computeroutput"><span class="identifier">plot</span><span class="special">()</span></code>
- Method</a>
- </h5>
 <p>
- The <code class="computeroutput"><span class="identifier">plot</span><span class="special">()</span></code>
+ [heading The <code class="computeroutput"><span class="identifier">plot</span><span class="special">()</span></code>
+ Method] The <code class="computeroutput"><span class="identifier">plot</span><span class="special">()</span></code>
         method is defined using Boost.Parameter. As such, it supports a few extra
         named parameters, as well as a deduced parameter.
       </p>
-<div class="table">
-<a name="id702627"></a><p class="title"><b>Table 15. 2D_plot Required parameter</b></p>
-<div class="table-contents"><table class="table" summary="2D_plot Required parameter">
+<div class="informaltable">
+<h5>
+<a name="id405188"></a>
+ <span class="table-title">2D_plot Required parameter</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- ID
- </p>
- </th>
-<th>
- <p>
- Type (* is a wildcard)
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>ID</th>
+<th>Type (* is a wildcard)</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- _container
- </p>
- </td>
-<td>
- <p>
- *
- </p>
- </td>
-<td>
- <p>
- Any object that can return an iterator with begin() and end()
- </p>
- </td>
+<td>_container</td>
+<td>*</td>
+<td>Any object that can
+ return an iterator with begin() and end()</td>
 </tr>
 <tr>
-<td>
- <p>
- _title
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span></code>
- </p>
- </td>
-<td>
- <p>
- The name of this series
- </p>
- </td>
+<td>_title</td>
+<td><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span></code></td>
+<td>The
+ name of this series</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id702748"></a><p class="title"><b>Table 16. 2D_plot Deduced parameter</b></p>
-<div class="table-contents"><table class="table" summary="2D_plot Deduced parameter">
+<div class="informaltable">
+<h5>
+<a name="id405266"></a>
+ <span class="table-title">2D_plot Deduced parameter</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
@@ -917,55 +422,26 @@
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- ID
- </p>
- </th>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-<th>
- <p>
- Default
- </p>
- </th>
+<th>ID</th>
+<th>Type</th>
+<th>Description</th>
+<th>Default</th>
 </tr></thead>
 <tbody><tr>
-<td>
- <p>
- _fill_color
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_color</span></code>
- </p>
- </td>
-<td>
- <p>
- This is the color that shows up inside of the circle that is being
- drawn
- </p>
- </td>
-<td>
- <p>
- white
- </p>
- </td>
+<td>_fill_color</td>
+<td><code class="computeroutput"><span class="identifier">svg_color</span></code></td>
+<td>This
+ is the color that shows up inside of the circle that is being drawn</td>
+<td>white</td>
 </tr></tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id702848"></a><p class="title"><b>Table 17. 2D_plot Optional Parameters</b></p>
-<div class="table-contents"><table class="table" summary="2D_plot Optional Parameters">
+<div class="informaltable">
+<h5>
+<a name="id405329"></a>
+ <span class="table-title">2D_plot Optional Parameters</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
@@ -973,235 +449,105 @@
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- ID
- </p>
- </th>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-<th>
- <p>
- Default
- </p>
- </th>
+<th>ID</th>
+<th>Type</th>
+<th>Description</th>
+<th>Default</th>
 </tr></thead>
 <tbody>
 <tr>
+<td>_bezier_on</td>
+<td><code class="computeroutput"><span class="keyword">bool</span></code></td>
 <td>
- <p>
- _bezier_on
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">bool</span></code>
- </p>
- </td>
-<td>
- <p>
               This determines whether or not Bézier curve interpolation will be
               applied to the plot lines. It is important to note that the curve interpolation
               is still in its infancy, and should only be used with reasonably nice
- data sets
- </p>
- </td>
+ data sets</td>
 <td class="auto-generated"> </td>
 </tr>
 <tr>
+<td>_line_on</td>
+<td><code class="computeroutput"><span class="keyword">bool</span></code></td>
 <td>
- <p>
- _line_on
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">bool</span></code>
- </p>
- </td>
-<td>
- <p>
- This determines whether or not there are lines drawn between data points.
- </p>
- </td>
-<td>
- <p>
- false
- </p>
- </td>
+ This determines whether or not there are lines drawn between data points.</td>
+<td>false</td>
 </tr>
 <tr>
+<td>_line_color</td>
+<td><code class="computeroutput"><span class="keyword">bool</span></code></td>
 <td>
- <p>
- _line_color
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">bool</span></code>
- </p>
- </td>
-<td>
- <p>
- This determines the color of the lines between data points.
- </p>
- </td>
-<td>
- <p>
- black
- </p>
- </td>
+ This determines the color of the lines between data points.</td>
+<td>black
+ </td>
 </tr>
 <tr>
-<td>
- <p>
- _area_fill_color
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_color</span></code>
- </p>
- </td>
-<td>
- <p>
- Defining this enables the "Fill Area Under Axis" feature.
- the color you define will be the fill color between a line and the
- area under the axis. This only takes effect if <code class="computeroutput"><span class="identifier">_line_on</span>
- <span class="special">=</span> <span class="keyword">true</span></code>
- is called.
- </p>
- </td>
+<td>_area_fill_color</td>
+<td><code class="computeroutput"><span class="identifier">svg_color</span></code></td>
+<td>Defining
+ this enables the "Fill Area Under Axis" feature. the color
+ you define will be the fill color between a line and the area under
+ the axis. This only takes effect if <code class="computeroutput"><span class="identifier">_line_on</span> <span class="special">=</span> <span class="keyword">true</span></code>
+ is called.</td>
 <td class="auto-generated"> </td>
 </tr>
 <tr>
-<td>
- <p>
- _stroke_color
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_color</span></code>
- </p>
- </td>
-<td>
- <p>
- The outline of the circle that is being drawn.
- </p>
- </td>
-<td>
- <p>
- black
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- _point_style
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">point_shape</span></code>
- </p>
- </td>
-<td>
- <p>
- This is the shape of the point. Options currently are between <code class="literal">none</code>,
- <code class="literal">circle</code>, and <code class="literal">square</code>.
- </p>
- </td>
-<td>
- <p>
- circle
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- _size
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">unsigned</span> <span class="keyword">int</span></code>
- </p>
- </td>
-<td>
- <p>
- This is the height/width of the circle and square.
- </p>
- </td>
-<td>
- <p>
- 10
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- _x_functor
- </p>
- </td>
-<td>
- <p>
- *
- </p>
- </td>
-<td>
- <p>
- A class or that contains a conversion function. You will not have to
- worry about this, unless you are trying to accomplish stuff like plotting
- a vector of humans. For example:
-</p>
-<pre class="programlisting">
-<span class="keyword">class</span> <span class="identifier">my_functor</span>
+<td>_stroke_color</td>
+<td><code class="computeroutput"><span class="identifier">svg_color</span></code></td>
+<td>The
+ outline of the circle that is being drawn.</td>
+<td>black</td>
+</tr>
+<tr>
+<td>_point_style</td>
+<td><code class="computeroutput"><span class="identifier">point_shape</span></code></td>
+<td>This
+ is the shape of the point. Options currently are between <code class="literal">none</code>,
+ <code class="literal">circle</code>, and <code class="literal">square</code>.</td>
+<td>circle</td>
+</tr>
+<tr>
+<td>_size</td>
+<td><code class="computeroutput"><span class="keyword">unsigned</span> <span class="keyword">int</span></code></td>
+<td>This is the height/width
+ of the circle and square.</td>
+<td>10</td>
+</tr>
+<tr>
+<td>_x_functor</td>
+<td>*</td>
+<td>A class or that contains
+ a conversion function. You will not have to worry about this, unless
+ you are trying to accomplish stuff like plotting a vector of humans.
+ For example:
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting">
+<span class="keyword">class</span> <span class="identifier">my_functor</span>
 <span class="special">{</span>
- <span class="identifier">typdef</span> <span class="identifier">pair</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">result_type</span><span class="special">;</span>
+ <span class="identifier">typdef</span> <span class="identifier">pair</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">result_type</span><span class="special">;</span>
 
- <span class="identifier">pair</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">operator</span><span class="special">()(</span><span class="keyword">const</span> <span class="identifier">human</span><span class="special">&amp;</span> <span class="identifier">_hum</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="identifier">pair</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="keyword">operator</span><span class="special">()(</span><span class="keyword">const</span> <span class="identifier">human</span><span class="special">&amp;</span> <span class="identifier">_hum</span><span class="special">)</span> <span class="keyword">const</span>
   <span class="special">{</span>
- <span class="keyword">return</span> <span class="identifier">pair</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">,</span> <span class="identifier">_hum</span><span class="special">.</span><span class="identifier">age</span><span class="special">());</span>
+ <span class="keyword">return</span> <span class="identifier">pair</span><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">,</span> <span class="identifier">_hum</span><span class="special">.</span><span class="identifier">age</span><span class="special">());</span>
   <span class="special">}</span>
 <span class="special">}</span>
 
 <span class="comment">// snip
 </span>
-<span class="identifier">plot</span><span class="special">(</span><span class="identifier">my_plot</span><span class="special">,</span> <span class="identifier">my_data</span><span class="special">,</span> <span class="string">"People"</span><span class="special">,</span> <span class="identifier">_x_functor</span> <span class="special">=</span> <span class="identifier">my_functor</span><span class="special">());</span>
+<span class="identifier">plot</span><span class="special">(</span><span class="identifier">my_plot</span><span class="special">,</span> <span class="identifier">my_data</span><span class="special">,</span> <span class="string">"People"</span><span class="special">,</span> <span class="identifier">_x_functor</span> <span class="special">=</span> <span class="identifier">my_functor</span><span class="special">());</span>
 </pre>
-<p>
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">boost_default_2d_convert</span></code>
+ </td>
+<td> <code class="computeroutput"><span class="identifier">boost_default_2d_convert</span></code>
               (the default) is sufficient in all cases where the data stored in the
- container can be directly cast to a double.
- </p>
- </td>
+ container can be directly cast to a double.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><p>
+<p>
         Here are some examples of correct uses:
       </p>
 <a name="svg_plot.interface.svg_2d_plot_interface.using_fill_and_stroke_colors"></a><h4>
-<a name="id703643"></a>
- <a href="svg_2d_plot_interface.html#svg_plot.interface.svg_2d_plot_interface.using_fill_and_stroke_colors">Using
- fill and stroke colors</a>
+<a name="id405885"></a>
+ Using fill and stroke colors
       </h4>
 <pre class="programlisting">
 <span class="identifier">my_plot</span><span class="special">.(</span><span class="identifier">my_data</span><span class="special">,</span> <span class="string">"Lions"</span><span class="special">,</span>
@@ -1230,15 +576,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="svg_1d_plot_interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="svg_boxplot_interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="svg_1d_plot_interface.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="svg_boxplot_interface.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_boxplot_interface.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_boxplot_interface.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_boxplot_interface.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,607 +1,307 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> svg_boxplot Public Interface</title>
+<title>svg_boxplot Public Interface</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../interface.html" title=" Public Interfaces">
-<link rel="prev" href="svg_2d_plot_interface.html" title=" svg_2d_plot Public Interface">
-<link rel="next" href="../implementation.html" title=" Implementation &amp; Rationale">
+<link rel="up" href="../interface.html" title="Public Interfaces">
+<link rel="prev" href="svg_2d_plot_interface.html" title="svg_2d_plot Public Interface">
+<link rel="next" href="../implementation.html" title="Implementation &amp; Rationale">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="svg_2d_plot_interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../implementation.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="svg_2d_plot_interface.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../implementation.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.interface.svg_boxplot_interface"></a> svg_boxplot Public Interface
-</h3></div></div></div>
-<div class="table">
-<a name="id703972"></a><p class="title"><b>Table 18. Boxplot Miscellaneous</b></p>
-<div class="table-contents"><table class="table" summary="Boxplot Miscellaneous">
+<a name="svg_plot.interface.svg_boxplot_interface"></a> <code class="computeroutput"><span class="identifier">svg_boxplot</span></code> Public
+ Interface</h3></div></div></div>
+<div class="informaltable">
+<h5>
+<a name="id406155"></a>
+ <span class="table-title">Boxplot Miscellaneous</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">()</span></code>
- </p>
- </td>
-<td>
- <p>
- See the defaults section for further details.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">()</span></code></td>
+<td>See the defaults section
+ for further details.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">image_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">unsigned</span>
- <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the size (pixels) of the plot image produced.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">image_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the size (pixels)
+ of the plot image produced.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">title</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the string to be used for the plot title.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">title</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code></td>
+<td>Sets
+ the string to be used for the plot title.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">title_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the font size for the plot title.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">title_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the font size for the plot title.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id704266"></a><p class="title"><b>Table 19. Boxplot Commands</b></p>
-<div class="table-contents"><table class="table" summary="Boxplot Commands">
+<div class="informaltable">
+<h5>
+<a name="id406376"></a>
+ <span class="table-title">Boxplot Commands</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">title_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Determines whether or not the image title is displayed.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">title_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Determines whether or
+ not the image title is displayed.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">x_label_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets whether or not the X-axis label will show.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">x_label_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Sets whether or not
+ the X-axis label will show.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">x_labels_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- sets whether or not the major ticks will be labelled on the x axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">x_labels_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>sets whether or not
+ the major ticks will be labelled on the x axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_label_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets whether or not the Y-axis label will show.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_label_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>Sets whether or not
+ the Y-axis label will show.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_labels_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- sets whether or not the major ticks will be labelled on the Y axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_major_labels_on</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)</span></code></td>
+<td>sets whether or not
+ the major ticks will be labelled on the Y axis.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id704595"></a><p class="title"><b>Table 20. Boxplot Colors</b></p>
-<div class="table-contents"><table class="table" summary="Boxplot Colors">
+<div class="informaltable">
+<h5>
+<a name="id406614"></a>
+ <span class="table-title">Boxplot Colors</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">title_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the title color.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">title_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the title color.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the background color for the whole image.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the background color for the whole image.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">background_border_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the background border color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
- an RGB color.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">background_border_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the background border color for the legend as <code class="computeroutput"><span class="identifier">col</span></code>,
+ an RGB color.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">plot_background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set the color of the plot area. Note: this only goes into effect if
- plot_area(true) has been called.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">plot_background_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Set
+ the color of the plot area. Note: this only goes into effect if plot_area(true)
+ has been called.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">x_label_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the labels that go along the X-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">x_label_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the labels that go along the X-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">x_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the major ticks of the X-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">x_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the major ticks of the X-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_label_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the labels that go along the X-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_label_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the labels that go along the X-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the major ticks of the Y-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_major_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the major ticks of the Y-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_minor_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span>
- <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the color of the minor ticks of the Y-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_minor_tick_color</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">svg_color</span> <span class="special">&amp;</span><span class="identifier">col</span><span class="special">)</span></code></td>
+<td>Sets
+ the color of the minor ticks of the Y-axis.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id705328"></a><p class="title"><b>Table 21. Boxplot Axis Information</b></p>
-<div class="table-contents"><table class="table" summary="Boxplot Axis Information">
+<div class="informaltable">
+<h5>
+<a name="id407171"></a>
+ <span class="table-title">Boxplot Axis Information</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">x_label</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the label of the X-axis. It will be shown <span class="bold"><strong>only
- if</strong></span> <code class="computeroutput"><span class="identifier">x_label</span><span class="special">(</span><span class="keyword">true</span><span class="special">)</span></code>.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">x_label</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code></td>
+<td>Sets
+ the label of the X-axis. It will be shown <span class="bold"><strong>only
+ if</strong></span> <code class="computeroutput"><span class="identifier">x_label</span><span class="special">(</span><span class="keyword">true</span><span class="special">)</span></code>.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">x_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the length (pixels) of the X-axis ticks.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">x_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the length (pixels)
+ of the X-axis ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">x_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the width (pixels) of the major ticks on the X-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">x_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the width (pixels) of the major ticks on the X-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_label</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the label of the X-axis. It will be shown <span class="bold"><strong>only
- if</strong></span> <code class="computeroutput"><span class="identifier">x_label</span><span class="special">(</span><span class="keyword">true</span><span class="special">)</span></code>.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_label</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code></td>
+<td>Sets
+ the label of the X-axis. It will be shown <span class="bold"><strong>only
+ if</strong></span> <code class="computeroutput"><span class="identifier">x_label</span><span class="special">(</span><span class="keyword">true</span><span class="special">)</span></code>.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_interval</span><span class="special">(</span><span class="keyword">double</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the distance (in Cartesian units) between ticks on the Y-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_major_interval</span><span class="special">(</span><span class="keyword">double</span><span class="special">)</span></code></td>
+<td>Sets the distance (in
+ Cartesian units) between ticks on the Y-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the length (pixels) of the Y-axis major ticks.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_major_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the length (pixels)
+ of the Y-axis major ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the width (pixels) of the major ticks on the Y-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_major_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the width (pixels) of the major ticks on the Y-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_num_minor_tick</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the length (pixels) of the Y-axis minor ticks.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_num_minor_tick</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the length (pixels) of the Y-axis minor ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_major_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the length (pixels) of the Y-axis minor tick lengths.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_major_tick_length</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the length (pixels)
+ of the Y-axis minor tick lengths.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_minor_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the width (pixels) of the minor ticks on the Y-axis.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_minor_tick_width</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the width (pixels) of the minor ticks on the Y-axis.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_num_minor_ticks</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the number of minor ticks between each major tick.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_num_minor_ticks</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the number of minor
+ ticks between each major tick.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span>
- <span class="identifier">y_range</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">y1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y2</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the scale of the Y-axis from y1 to y2. Throws an exception if
- y2 &lt;= y1.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg_boxplot</span><span class="special">&amp;</span> <span class="identifier">y_range</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">y1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y2</span><span class="special">)</span></code></td>
+<td>Sets the scale of the
+ Y-axis from y1 to y2. Throws an exception if y2 &lt;= y1.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><p>
+<p>
         (Note: Getters omitted for now - TODO)
       </p>
-<a name="svg_plot.interface.svg_boxplot_interface.the__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method"></a><h5>
-<a name="id706229"></a>
- <a href="svg_boxplot_interface.html#svg_plot.interface.svg_boxplot_interface.the__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method">The
- <code class="computeroutput"><span class="identifier">plot</span><span class="special">()</span></code>
- Method</a>
- </h5>
+<p>
+ [heading The <code class="computeroutput"><span class="identifier">plot</span><span class="special">()</span></code>
+ Method]
+ </p>
 <p>
         The <code class="computeroutput"><span class="identifier">plot</span><span class="special">()</span></code>
         method is defined using Boost.Parameter. As such, it supports a few extra
         named parameters, as well as a deduced parameter.
       </p>
-<div class="table">
-<a name="id706290"></a><p class="title"><b>Table 22. Required parameter</b></p>
-<div class="table-contents"><table class="table" summary="Required parameter">
+<div class="informaltable">
+<h5>
+<a name="id407862"></a>
+ <span class="table-title">Required parameter</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- ID
- </p>
- </th>
-<th>
- <p>
- Type (* is a wildcard)
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
+<th>ID</th>
+<th>Type (* is a wildcard)</th>
+<th>Description</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- ctr
- </p>
- </td>
-<td>
- <p>
- *
- </p>
- </td>
-<td>
- <p>
- Any object that can return an iterator with begin() and end().
- </p>
- </td>
+<td>ctr</td>
+<td>*</td>
+<td>Any object that can return
+ an iterator with begin() and end().</td>
 </tr>
 <tr>
-<td>
- <p>
- name
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span></code>
- </p>
- </td>
-<td>
- <p>
- The name of this data series.
- </p>
- </td>
+<td>name</td>
+<td><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span></code></td>
+<td>The
+ name of this data series.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break"><div class="table">
-<a name="id706411"></a><p class="title"><b>Table 23. Optional Parameters</b></p>
-<div class="table-contents"><table class="table" summary="Optional Parameters">
+<div class="informaltable">
+<h5>
+<a name="id407940"></a>
+ <span class="table-title">Optional Parameters</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
@@ -609,302 +309,119 @@
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- ID
- </p>
- </th>
-<th>
- <p>
- Type
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-<th>
- <p>
- Default
- </p>
- </th>
+<th>ID</th>
+<th>Type</th>
+<th>Description</th>
+<th>Default</th>
 </tr></thead>
 <tbody>
 <tr>
+<td>box_style</td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">svg_style</span><span class="special">&amp;</span></code></td>
+<td>Styles
+ the box of the boxplot.</td>
 <td>
- <p>
- box_style
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">const</span> <span class="identifier">svg_style</span><span class="special">&amp;</span></code>
- </p>
- </td>
-<td>
- <p>
- Styles the box of the boxplot.
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_style</span><span class="special">(</span><span class="identifier">white</span><span class="special">,</span>
- <span class="identifier">black</span><span class="special">,</span>
- <span class="number">1</span><span class="special">)</span></code>.
- </p>
- </td>
+<code class="computeroutput"><span class="identifier">svg_style</span><span class="special">(</span><span class="identifier">white</span><span class="special">,</span> <span class="identifier">black</span><span class="special">,</span> <span class="number">1</span><span class="special">)</span></code>.</td>
 </tr>
 <tr>
+<td>median_style</td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">svg_style</span><span class="special">&amp;</span></code></td>
+<td>Styles
+ the median of the boxplot.</td>
 <td>
- <p>
- median_style
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">const</span> <span class="identifier">svg_style</span><span class="special">&amp;</span></code>
- </p>
- </td>
-<td>
- <p>
- Styles the median of the boxplot.
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_style</span><span class="special">(</span><span class="identifier">white</span><span class="special">,</span>
- <span class="identifier">black</span><span class="special">,</span>
- <span class="number">1</span><span class="special">)</span></code>.
- </p>
- </td>
+<code class="computeroutput"><span class="identifier">svg_style</span><span class="special">(</span><span class="identifier">white</span><span class="special">,</span> <span class="identifier">black</span><span class="special">,</span> <span class="number">1</span><span class="special">)</span></code>.</td>
 </tr>
 <tr>
+<td>axis_style</td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">svg_style</span><span class="special">&amp;</span></code></td>
+<td>Styles
+ the data range line (the line going through the middle.</td>
 <td>
- <p>
- axis_style
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">const</span> <span class="identifier">svg_style</span><span class="special">&amp;</span></code>
- </p>
- </td>
-<td>
- <p>
- Styles the data range line (the line going through the middle.
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_style</span><span class="special">(</span><span class="identifier">white</span><span class="special">,</span>
- <span class="identifier">black</span><span class="special">,</span>
- <span class="number">1</span><span class="special">)</span></code>.
- </p>
- </td>
+<code class="computeroutput"><span class="identifier">svg_style</span><span class="special">(</span><span class="identifier">white</span><span class="special">,</span> <span class="identifier">black</span><span class="special">,</span> <span class="number">1</span><span class="special">)</span></code>.</td>
 </tr>
 <tr>
-<td>
- <p>
- min_whisker_style
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">const</span> <span class="identifier">svg_style</span><span class="special">&amp;</span></code>
- </p>
- </td>
-<td>
- <p>
- Styles the lower whisker.
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_style</span><span class="special">(</span><span class="identifier">white</span><span class="special">,</span>
- <span class="identifier">black</span><span class="special">,</span>
- <span class="number">1</span><span class="special">)</span></code>
- </p>
- </td>
+<td>min_whisker_style</td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">svg_style</span><span class="special">&amp;</span></code></td>
+<td>Styles
+ the lower whisker.</td>
+<td><code class="computeroutput"><span class="identifier">svg_style</span><span class="special">(</span><span class="identifier">white</span><span class="special">,</span> <span class="identifier">black</span><span class="special">,</span> <span class="number">1</span><span class="special">)</span></code></td>
 </tr>
 <tr>
-<td>
- <p>
- max_whisker_style
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">const</span> <span class="identifier">svg_style</span><span class="special">&amp;</span></code>
- </p>
- </td>
-<td>
- <p>
- Styles the upper whisker.
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg_style</span><span class="special">(</span><span class="identifier">white</span><span class="special">,</span>
- <span class="identifier">black</span><span class="special">,</span>
- <span class="number">1</span><span class="special">)</span></code>
- </p>
- </td>
+<td>max_whisker_style</td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">svg_style</span><span class="special">&amp;</span></code></td>
+<td>Styles
+ the upper whisker.</td>
+<td><code class="computeroutput"><span class="identifier">svg_style</span><span class="special">(</span><span class="identifier">white</span><span class="special">,</span> <span class="identifier">black</span><span class="special">,</span> <span class="number">1</span><span class="special">)</span></code></td>
 </tr>
 <tr>
-<td>
- <p>
- mild_outlier_style
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">const</span> <span class="identifier">plot_point_style</span><span class="special">&amp;</span></code>
- </p>
- </td>
-<td>
- <p>
- Styles outliers within 3 Inter-Quartile Ranges (IQRs) of the edges
- of the box
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">plot_point_style</span><span class="special">(</span><span class="identifier">black</span><span class="special">,</span>
- <span class="identifier">black</span><span class="special">,</span>
- <span class="number">0</span><span class="special">)</span></code>
- </p>
- </td>
+<td>mild_outlier_style</td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">plot_point_style</span><span class="special">&amp;</span></code></td>
+<td>Styles
+ outliers within 3 Inter-Quartile Ranges (IQRs) of the edges of the
+ box</td>
+<td><code class="computeroutput"><span class="identifier">plot_point_style</span><span class="special">(</span><span class="identifier">black</span><span class="special">,</span> <span class="identifier">black</span><span class="special">,</span> <span class="number">0</span><span class="special">)</span></code></td>
 </tr>
 <tr>
-<td>
- <p>
- ext_outlier_style
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">const</span> <span class="identifier">plot_point_style</span><span class="special">&amp;</span></code>
- </p>
- </td>
-<td>
- <p>
- Styles outliers more than 3 IQRs away from the box.
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">plot_point_style</span><span class="special">(</span><span class="identifier">white</span><span class="special">,</span>
- <span class="identifier">black</span><span class="special">,</span>
- <span class="number">1</span><span class="special">)</span></code>
- </p>
- </td>
+<td>ext_outlier_style</td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">plot_point_style</span><span class="special">&amp;</span></code></td>
+<td>Styles
+ outliers more than 3 IQRs away from the box.</td>
+<td><code class="computeroutput"><span class="identifier">plot_point_style</span><span class="special">(</span><span class="identifier">white</span><span class="special">,</span> <span class="identifier">black</span><span class="special">,</span> <span class="number">1</span><span class="special">)</span></code></td>
 </tr>
 <tr>
-<td>
- <p>
- whisker_length
- </p>
- </td>
-<td>
- <p>
- unsigned int
- </p>
- </td>
-<td>
- <p>
- Determines how long the whiskers at the end of the data range line
- will be
- </p>
- </td>
-<td>
- <p>
- 30
- </p>
- </td>
+<td>whisker_length</td>
+<td>unsigned int</td>
+<td>Determines
+ how long the whiskers at the end of the data range line will be</td>
+<td>30</td>
 </tr>
 <tr>
-<td>
- <p>
- box_width
- </p>
- </td>
-<td>
- <p>
- unsigned int
- </p>
- </td>
-<td>
- <p>
- Determines the width of the box.
- </p>
- </td>
-<td>
- <p>
- 60
- </p>
- </td>
+<td>box_width</td>
+<td>unsigned int</td>
+<td>Determines
+ the width of the box.</td>
+<td>60</td>
 </tr>
 <tr>
-<td>
- <p>
- functor
- </p>
- </td>
-<td>
- <p>
- *
- </p>
- </td>
-<td>
- <p>
- A class or that contains a conversion function. You will not have to
- worry about this, unless you are trying to accomplish stuff like plotting
- a container of a user-defined class, for example human, that does not
- have a conversion to double. For example:
-</p>
-<pre class="programlisting">
-<span class="keyword">class</span> <span class="identifier">my_functor</span>
+<td>functor</td>
+<td>*</td>
+<td>A class or that contains
+ a conversion function. You will not have to worry about this, unless
+ you are trying to accomplish stuff like plotting a container of a user-defined
+ class, for example human, that does not have a conversion to double.
+ For example:
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting">
+<span class="keyword">class</span> <span class="identifier">my_functor</span>
 <span class="special">{</span>
- <span class="identifier">typdef</span> <span class="keyword">double</span> <span class="identifier">result_type</span><span class="special">;</span>
+ <span class="identifier">typdef</span> <span class="keyword">double</span> <span class="identifier">result_type</span><span class="special">;</span>
 
- <span class="keyword">double</span> <span class="keyword">operator</span><span class="special">()(</span><span class="keyword">const</span> <span class="identifier">human</span><span class="special">&amp;</span> <span class="identifier">body</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="keyword">double</span> <span class="keyword">operator</span><span class="special">()(</span><span class="keyword">const</span> <span class="identifier">human</span><span class="special">&amp;</span> <span class="identifier">body</span><span class="special">)</span> <span class="keyword">const</span>
   <span class="special">{</span>
- <span class="keyword">return</span> <span class="keyword">double</span><span class="special">(</span><span class="identifier">body</span><span class="special">.</span><span class="identifier">age</span><span class="special">());</span>
+ <span class="keyword">return</span> <span class="keyword">double</span><span class="special">(</span><span class="identifier">body</span><span class="special">.</span><span class="identifier">age</span><span class="special">());</span>
   <span class="special">}</span>
 <span class="special">}</span>
 
 <span class="comment">// ...
 </span>
-<span class="identifier">plot</span><span class="special">(</span><span class="identifier">my_data</span><span class="special">,</span> <span class="string">"People"</span><span class="special">,</span> <span class="identifier">functor</span> <span class="special">=</span> <span class="identifier">my_functor</span><span class="special">());</span>
+<span class="identifier">plot</span><span class="special">(</span><span class="identifier">my_data</span><span class="special">,</span> <span class="string">"People"</span><span class="special">,</span> <span class="identifier">functor</span> <span class="special">=</span> <span class="identifier">my_functor</span><span class="special">());</span>
 </pre>
-<p>
- </p>
- </td>
+ </td>
 <td>
- <p>
- <code class="computeroutput"><span class="identifier">boost_default_convert</span></code>
+<code class="computeroutput"><span class="identifier">boost_default_convert</span></code>
               (default) is sufficient in all cases where the data stored in the container
- can be directly cast to a double.
- </p>
- </td>
+ can be directly cast to a double.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break">
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="svg_2d_plot_interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../implementation.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="svg_2d_plot_interface.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../implementation.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_interface.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_interface.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/interface/svg_interface.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,562 +1,376 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> svg
- Public Interface</title>
+<title>svg Public Interface</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../interface.html" title=" Public Interfaces">
-<link rel="prev" href="../interface.html" title=" Public Interfaces">
-<link rel="next" href="svg_1d_plot_interface.html" title=" svg_1d_plot Public Interface">
+<link rel="up" href="../interface.html" title="Public Interfaces">
+<link rel="prev" href="../interface.html" title="Public Interfaces">
+<link rel="next" href="svg_1d_plot_interface.html" title="svg_1d_plot Public Interface">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="svg_1d_plot_interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../interface.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="svg_1d_plot_interface.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.interface.svg_interface"></a><a href="svg_interface.html" title=" svg
- Public Interface"> <code class="computeroutput"><span class="identifier">svg</span></code>
- Public Interface</a>
-</h3></div></div></div>
-<div class="table">
-<a name="id692282"></a><p class="title"><b>Table 3. class svg</b></p>
-<div class="table-contents"><table class="table" summary="class svg">
+<a name="svg_plot.interface.svg_interface"></a> <code class="computeroutput"><span class="identifier">svg</span></code> Public Interface</h3></div></div></div>
+<div class="informaltable">
+<h5>
+<a name="id396830"></a>
+ <span class="table-title">class `svg` Standard C++ Methods</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- Signature
- </p>
- </th>
-<th>
- <p>
- Description
- </p>
- </th>
-<th>
- <p>
- Notes &amp; Examples
- </p>
- </th>
+<th>Signature</th>
+<th>Description</th>
+<th>Notes &amp;
+ Examples</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">()</span></code>
- </p>
- </td>
-<td>
- <p>
- Constructor
- </p>
- </td>
-<td>
- <p>
- Default image size (pixels) is (400, 400).
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">()</span></code></td>
+<td>Constructor</td>
+<td>Default
+ image size (pixels) is (400, 400).</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">coord_precision</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the precision output for coordinates (decimal digits)
- </p>
- </td>
-<td>
- <p>
- default 3, but for mobiles, 2 might suffice.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">()</span></code></td>
+<td>Constructor</td>
+<td>Default
+ image size (pixels) is (400, 400).</td>
 </tr>
+</tbody>
+</table>
+</div>
+<div class="informaltable">
+<h5>
+<a name="id396915"></a>
+ <span class="table-title">`svg` shapes</span>
+ </h5>
+<table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>Signature</th>
+<th>Description</th>
+<th>Notes &amp;
+ Examples</th>
+</tr></thead>
+<tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">()</span></code>
- </p>
- </td>
-<td>
- <p>
- Constructor
- </p>
- </td>
-<td>
- <p>
- Default image size (pixels) is (400, 400).
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">line</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">x1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">x2</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y2</span><span class="special">)</span></code></td>
+<td>Adds
+ a line from (x1,y1) to (x2,y2) in the root level of the document.</td>
+<td> </td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">copyright_holder</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set copyright holder for the SVG XML document, as comment and XML.
- </p>
- </td>
-<td>
- <p>
- &lt;!-- SVG Plot Copyright Paul A. Bristow 2007 --&gt; &lt;meta name<code class="literal">"copyright"
- content</code>"Paul A. Bristow" /&gt;
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">path_element</span><span class="special">&amp;</span> <span class="identifier">path</span><span class="special">()</span></code></td>
+<td>Pushes a <code class="computeroutput"><span class="identifier">path_element</span></code> to the back of the tree
+ and returns a reference to it. This allows chaining, for example:
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting">
+<span class="identifier">path_element</span><span class="special">&amp;</span> <span class="identifier">my_path</span> <span class="special">=</span> <span class="identifier">image</span><span class="special">.</span><span class="identifier">path</span><span class="special">();</span>
+
+<span class="identifier">my_path</span><span class="special">.</span><span class="identifier">M</span><span class="special">(</span><span class="number">3</span><span class="special">,</span> <span class="number">3</span><span class="special">).</span><span class="identifier">l</span><span class="special">(</span><span class="number">150</span><span class="special">,</span> <span class="number">150</span><span class="special">);</span>
+</pre>
+ </td>
+<td class="auto-generated"> </td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">copyright_date</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set copyright date for the SVG XML document, as comment and XML.
- </p>
- </td>
-<td>
- <p>
- &lt;!-- SVG Plot Copyright Paul A. Bristow 2007 --&gt; &lt;meta name<code class="literal">"date"
- content</code>"2007" /&gt;
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">get_g_element</span></code></td>
+<td>Class
+ derived from svg_element.</td>
+<td>Graph element: line, circle,
+ rect... Node element of document tree.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">g_element</span><span class="special">&amp;</span> <span class="identifier">add_g_element</span><span class="special">()</span></code></td>
+<td>Adds
+ a g_element at the root of the document tree. Acts as a <code class="computeroutput"><span class="identifier">push_back</span><span class="special">()</span></code>
+</td>
+<td>Returns
+ the <code class="computeroutput"><span class="identifier">g_element</span></code> that
+ is pushed back. This allows you to do something like the following:
+ <code class="computeroutput"><span class="identifier">image</span><span class="special">.</span><span class="identifier">add_g_element</span><span class="special">().</span><span class="identifier">line</span><span class="special">(/**/).</span><span class="identifier">line</span><span class="special">(/**/).</span><span class="identifier">rect</span><span class="special">(/**/);</span> </code>
+ which adds two lines and a rectangle to the g_element that was just
+ created.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">circle</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">x</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">radius</span> <span class="special">=</span> <span class="number">5</span><span class="special">)</span></code></td>
+<td>Adds
+ a point at (x,y) in the root level of the document</td>
+<td>If
+ the user is calling the circle method, odds are they would prefer a
+ real circle instead of a degenerate circle (a point). 5 is as good
+ a default as any other, and the user is unlikely want a point if they
+ are making this call.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">description</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets description for the SVG XML document, as comment and XML.
- </p>
- </td>
-<td>
- <p>
- &lt;!-- My Document description --&gt; &lt;desc&gt;My Document description&lt;/desc&gt;
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">g_element</span><span class="special">&amp;</span> <span class="identifier">get_g_element</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Gets
+ the g_element at the index specified.</td>
+<td>Gives a runtime
+ error if you specify an index that does not contain a <code class="computeroutput"><span class="identifier">g_element</span></code>. An iterator interface
+ to access these elements might be useful.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">document_title</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets title for the SVG XML document (not the plot)
- </p>
- </td>
-<td>
- <p>
- &lt;title&gt;My Document title&lt;/title&gt;
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">rect</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">x1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">width</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">height</span><span class="special">)</span></code></td>
+<td>Adds
+ a rectangle at point (x1, y1) that has <code class="computeroutput"><span class="identifier">width</span></code>
+ wide and <code class="computeroutput"><span class="identifier">height</span></code> high.</td>
+<td> </td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">license</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span>
- <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Set license terms (if any): reproduction, distribution, attribution,
- commercialuse
- </p>
- </td>
-<td>
- <p>
- "permits" (default), "requires", or "prohibits".
- </p>
- </td>
-<td>
- <p>
- [1is_license(bool)
- </p>
- </td>
-<td>
- <p>
- Adds a typical permissive Boost-like license.
- </p>
- </td>
-<td>
- <p>
- permits reproduction &amp; distribution but requires atribution.
- </p>
- </td>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">text</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">x</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">text</span><span class="special">)</span></code></td>
+<td>Adds string <code class="computeroutput"><span class="identifier">text</span></code> at (x,y) in the root level of
+ the document</td>
+<td> </td>
 </tr>
+</tbody>
+</table>
+</div>
+<div class="informaltable">
+<h5>
+<a name="id397698"></a>
+ <span class="table-title">`svg` Copyright</span>
+ </h5>
+<table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>Signature</th>
+<th>Description</th>
+<th>Notes &amp;
+ Examples</th>
+</tr></thead>
+<tbody>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">get_g_element</span></code>
- </p>
- </td>
-<td>
- <p>
- Class derived from svg_element.
- </p>
- </td>
-<td>
- <p>
- Graph element: line, circle, rect... Node element of document tree.
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">copyright_holder</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code></td>
+<td>Set copyright holder
+ for the SVG XML document, as comment and XML.</td>
+<td>&lt;!--
+ SVG Plot Copyright Paul A. Bristow 2007 --&gt; &lt;meta name<code class="literal">"copyright"
+ content</code>"Paul A. Bristow" /&gt;</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">g_element</span><span class="special">&amp;</span>
- <span class="identifier">add_g_element</span><span class="special">()</span></code>
- </p>
- </td>
-<td>
- <p>
- Adds a g_element at the root of the document tree. Acts as a <code class="computeroutput"><span class="identifier">push_back</span><span class="special">()</span></code>
- </p>
- </td>
-<td>
- <p>
- Returns the <code class="computeroutput"><span class="identifier">g_element</span></code>
- that is pushed back. This allows you to do something like the following:
- <code class="computeroutput"><span class="identifier">image</span><span class="special">.</span><span class="identifier">add_g_element</span><span class="special">().</span><span class="identifier">line</span><span class="special">(/**/).</span><span class="identifier">line</span><span class="special">(/**/).</span><span class="identifier">rect</span><span class="special">(/**/);</span>
- </code> which adds two lines and a rectangle to the g_element that
- was just created.
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">license</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code></td>
+<td>Set
+ license terms (if any): reproduction, distribution, attribution, commercialuse</td>
+<td>"permits"
+ (default), "requires", or "prohibits".</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">circle</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">x</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span>
- <span class="identifier">radius</span> <span class="special">=</span>
- <span class="number">5</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Adds a point at (x,y) in the root level of the document
- </p>
- </td>
-<td>
- <p>
- If the user is calling the circle method, odds are they would prefer
- a real circle instead of a degenerate circle (a point). 5 is as good
- a default as any other, and the user is unlikely want a point if they
- are making this call.
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">reproduction</span><span class="special">()</span></code></td>
+<td>Returns the Reproduction
+ segment of the license</td>
+<td>The default is <code class="computeroutput"><span class="string">""</span></code>
+</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">g_element</span><span class="special">&amp;</span>
- <span class="identifier">get_g_element</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Gets the g_element at the index specified.
- </p>
- </td>
-<td>
- <p>
- Gives a runtime error if you specify an index that does not contain
- a <code class="computeroutput"><span class="identifier">g_element</span></code>. An iterator
- interface to access these elements might be useful.
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">distribution</span><span class="special">()</span></code></td>
+<td>Returns the Distribution
+ segment of the license</td>
+<td>The default is <code class="computeroutput"><span class="string">""</span></code>
+</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">x_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the width of the image (pixels).
- </p>
- </td>
-<td>
- <p>
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">attribution</span><span class="special">()</span></code></td>
+<td>Returns the Attribution
+ segment of the license</td>
+<td>The default is <code class="computeroutput"><span class="string">""</span></code>
+</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">y_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the height of the image (pixels).
- </p>
- </td>
-<td>
- <p>
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">commercialuse</span><span class="special">()</span></code></td>
+<td>Returns the Commercial
+ Use segment of the license</td>
+<td>The default is <code class="computeroutput"><span class="string">""</span></code>
+</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="keyword">unsigned</span> <span class="keyword">int</span>
- <span class="identifier">x_size</span><span class="special">()</span></code>
- </p>
- </td>
-<td>
- <p>
- Returns the width of the image (pixels).
- </p>
- </td>
-<td>
- <p>
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">copyright_holder</span></code></td>
+<td>Returns
+ the copyright holder for the SVG XML document</td>
+<td>Returns
+ the input value for copyright holder. Does not return any XML</td>
 </tr>
 <tr>
 <td>
- <p>
- <code class="computeroutput"><span class="keyword">unsigned</span> <span class="keyword">int</span>
- <span class="identifier">y_size</span><span class="special">()</span></code>
- </p>
- </td>
-<td>
- <p>
- Returns the height of the image (pixels).
- </p>
- </td>
-<td>
- <p>
- </p>
- </td>
-<td class="auto-generated"> </td>
+<code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">license</span><span class="special">(</span><span class="keyword">bool</span><span class="special">)]</span> <span class="special">[</span><span class="identifier">Sets</span> <span class="identifier">whether</span> <span class="keyword">or</span> <span class="keyword">not</span> <span class="identifier">the</span> <span class="identifier">license</span> <span class="identifier">information</span> <span class="identifier">should</span> <span class="identifier">be</span> <span class="identifier">added</span> <span class="identifier">to</span> <span class="identifier">the</span> <span class="identifier">written</span> <span class="identifier">document</span><span class="special">]</span> <span class="special">[</span></code>false`</td>
 <td class="auto-generated"> </td>
 <td class="auto-generated"> </td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">image_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">unsigned</span>
- <span class="keyword">int</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Sets the size of the image produced, (pixels).
- </p>
- </td>
-<td>
- <p>
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="keyword">bool</span> <span class="identifier">is_license</span><span class="special">()</span></code></td>
+<td>Returns whether or
+ not a license will be output with a written document.</td>
+<td>Permits
+ reproduction &amp; distribution but requires atribution.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">line</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">x1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">x2</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y2</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Adds a line from (x1,y1) to (x2,y2) in the root level of the document.
- </p>
- </td>
-<td>
- <p>
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">author</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code></td>
+<td>Sets the author of the
+ document</td>
+<td>The copyright_holder is the default author</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">path_element</span><span class="special">&amp;</span>
- <span class="identifier">path</span><span class="special">()</span></code>
- </p>
- </td>
-<td>
- <p>
- Pushes a <code class="computeroutput"><span class="identifier">path_element</span></code>
- to the back of the tree and returns a reference to it. This allows
- chaining, for example:
-</p>
-<pre class="programlisting">
-<span class="identifier">path_element</span><span class="special">&amp;</span> <span class="identifier">my_path</span> <span class="special">=</span> <span class="identifier">image</span><span class="special">.</span><span class="identifier">path</span><span class="special">();</span>
-
-<span class="identifier">my_path</span><span class="special">.</span><span class="identifier">M</span><span class="special">(</span><span class="number">3</span><span class="special">,</span> <span class="number">3</span><span class="special">).</span><span class="identifier">l</span><span class="special">(</span><span class="number">150</span><span class="special">,</span> <span class="number">150</span><span class="special">);</span>
-</pre>
-<p>
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">copyright_date</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code></td>
+<td>Set copyright date for
+ the SVG XML document, as comment and XML.</td>
+<td>&lt;!-- SVG
+ Plot Copyright Paul A. Bristow 2007 --&gt; &lt;meta name<code class="literal">"date"
+ content</code>"2007" /&gt;</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">rect</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">x1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y1</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">width</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">height</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Adds a rectangle at point (x1, y1) that has <code class="computeroutput"><span class="identifier">width</span></code>
- wide and <code class="computeroutput"><span class="identifier">height</span></code> high.
- </p>
- </td>
-<td>
- <p>
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">copyright_date</span><span class="special">()</span></code></td>
+<td>Returns the copyright
+ date for the SVG XML document</td>
+<td>Returns the date string,
+ not the associated XML.</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">text</span><span class="special">(</span><span class="keyword">double</span> <span class="identifier">x</span><span class="special">,</span> <span class="keyword">double</span> <span class="identifier">y</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">text</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Adds string <code class="computeroutput"><span class="identifier">text</span></code> at
- (x,y) in the root level of the document
- </p>
- </td>
-<td>
- <p>
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">description</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code></td>
+<td>Sets description for
+ the SVG XML document, as comment and XML.</td>
+<td>&lt;!-- My
+ Document description --&gt; &lt;desc&gt;My Document description&lt;/desc&gt;</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">write</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code>
- </p>
- </td>
-<td>
- <p>
- Writes the document to the file represented by the argument.
- </p>
- </td>
-<td>
- <p>
- Opens the file stream itself and tries to call <code class="computeroutput"><span class="identifier">write</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span><span class="special">&amp;)</span></code>. Throws <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">runtime_exception</span></code>
- if it can not open the file.
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">description</span><span class="special">()</span></code></td>
+<td>Returns the description
+ of the document.</td>
+<td>Returns the description string, not
+ the associated XML</td>
 </tr>
 <tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span>
- <span class="identifier">write</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span><span class="special">&amp;)</span></code>
- </p>
- </td>
-<td>
- <p>
- Writes the document to the stream represented by the argument.
- </p>
- </td>
-<td>
- <p>
- </p>
- </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
-<td class="auto-generated"> </td>
+<td><code class="computeroutput"><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">author</span><span class="special">()</span></code></td>
+<td>Returns the author
+ of the document.</td>
+<td>The default is the copyright_holder.</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="informaltable">
+<h5>
+<a name="id398697"></a>
+ <span class="table-title">`svg` document settings and writing</span>
+ </h5>
+<table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>Signature</th>
+<th>Description</th>
+<th>Notes &amp;
+ Examples</th>
+</tr></thead>
+<tbody>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">coord_precision</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the precision output for coordinates (decimal digits)</td>
+<td>default
+ 3, but for mobiles, 2 might suffice.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">document_title</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">)</span></code></td>
+<td>Sets title for the SVG
+ XML document (not the plot)</td>
+<td>&lt;title&gt;My Document
+ title&lt;/title&gt;</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="keyword">int</span> <span class="identifier">document_size</span><span class="special">()</span></code></td>
+<td>Returns the number
+ of elements in the root of the document</td>
+<td> </td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="keyword">int</span> <span class="identifier">coord_precision</span><span class="special">(</span><span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Returns the current
+ precision of doubles in the document</td>
+<td>The default is 3</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">x_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the width of the
+ image (pixels).</td>
+<td> </td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">y_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets the height of the
+ image (pixels).</td>
+<td> </td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">x_size</span><span class="special">()</span></code></td>
+<td>Returns the width of
+ the image (pixels).</td>
+<td> </td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">y_size</span><span class="special">()</span></code></td>
+<td>Returns the height
+ of the image (pixels).</td>
+<td> </td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">image_size</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span><span class="special">)</span></code></td>
+<td>Sets
+ the size of the image produced, (pixels).</td>
+<td> </td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">write</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;)</span></code></td>
+<td>Writes the document
+ to the file represented by the argument.</td>
+<td>Opens the file
+ stream itself and tries to call <code class="computeroutput"><span class="identifier">write</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span><span class="special">&amp;)</span></code>. Throws <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">runtime_exception</span></code>
+ if it can not open the file.</td>
+</tr>
+<tr>
+<td><code class="computeroutput"><span class="identifier">svg</span><span class="special">&amp;</span> <span class="identifier">write</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span><span class="special">&amp;)</span></code></td>
+<td>Writes
+ the document to the stream represented by the argument.</td>
+<td> </td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break">
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="svg_1d_plot_interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../interface.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../interface.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="svg_1d_plot_interface.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/plot_defaults.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/plot_defaults.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/plot_defaults.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,50 +1,42 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Plot Defaults</title>
+<title>Plot Defaults</title>
 <link rel="stylesheet" href="../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../index.html" title="SVG_Plot">
 <link rel="up" href="../index.html" title="SVG_Plot">
-<link rel="prev" href="behavior/behavior_stylesheets.html" title=" Stylesheets">
-<link rel="next" href="plot_defaults/1d_defaults.html" title=" svg_1d_plot
- Defaults">
+<link rel="prev" href="behavior/behavior_stylesheets.html" title="Stylesheets">
+<link rel="next" href="plot_defaults/1d_defaults.html" title="svg_1d_plot Defaults">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="behavior/behavior_stylesheets.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="plot_defaults/1d_defaults.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="behavior/behavior_stylesheets.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="plot_defaults/1d_defaults.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="svg_plot.plot_defaults"></a> Plot Defaults
-</h2></div></div></div>
+<a name="svg_plot.plot_defaults"></a> Plot Defaults</h2></div></div></div>
 <div class="toc"><dl>
-<dt><span class="section"><a href="plot_defaults/1d_defaults.html"> <code class="computeroutput"><span class="identifier">svg_1d_plot</span></code>
- Defaults</a></span></dt>
-<dt><span class="section"><a href="plot_defaults/2d_defaults.html"> <code class="computeroutput"><span class="identifier">svg_2d_plot</span></code>
- Defaults</a></span></dt>
+<dt><span class="section"> svg_1d_plot Defaults</span></dt>
+<dt><span class="section"> svg_2d_plot Defaults</span></dt>
 </dl></div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="behavior/behavior_stylesheets.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="plot_defaults/1d_defaults.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="behavior/behavior_stylesheets.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="plot_defaults/1d_defaults.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/plot_defaults/1d_defaults.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/plot_defaults/1d_defaults.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/plot_defaults/1d_defaults.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,520 +1,224 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> svg_1d_plot
- Defaults</title>
+<title>svg_1d_plot Defaults</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../plot_defaults.html" title=" Plot Defaults">
-<link rel="prev" href="../plot_defaults.html" title=" Plot Defaults">
-<link rel="next" href="2d_defaults.html" title=" svg_2d_plot
- Defaults">
+<link rel="up" href="../plot_defaults.html" title="Plot Defaults">
+<link rel="prev" href="../plot_defaults.html" title="Plot Defaults">
+<link rel="next" href="2d_defaults.html" title="svg_2d_plot Defaults">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../plot_defaults.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../plot_defaults.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="2d_defaults.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../plot_defaults.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../plot_defaults.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="2d_defaults.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.plot_defaults.1d_defaults"></a><a href="1d_defaults.html" title=" svg_1d_plot
- Defaults"> <code class="computeroutput"><span class="identifier">svg_1d_plot</span></code>
- Defaults</a>
-</h3></div></div></div>
+<a name="svg_plot.plot_defaults.1d_defaults"></a> <code class="computeroutput"><span class="identifier">svg_1d_plot</span></code> Defaults</h3></div></div></div>
 <p>
         There are certain defaults, tabulated below, that are true at the beginning
         of the plotting.
       </p>
-<div class="table">
-<a name="id690244"></a><p class="title"><b>Table 1. Default Values</b></p>
-<div class="table-contents"><table class="table" summary="Default Values">
+<div class="informaltable">
+<h5>
+<a name="id395741"></a>
+ <span class="table-title">Default Values</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- object
- </p>
- </th>
-<th>
- <p>
- Default value
- </p>
- </th>
-<th>
- <p>
- Rationale
- </p>
- </th>
+<th>object</th>
+<th>Default value</th>
+<th>Rationale</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- All colors not defined in this table
- </p>
- </td>
-<td>
- <p>
- black
- </p>
- </td>
-<td>
- <p>
- Coloring, if any, will be highly dependent on user needs.
- </p>
- </td>
+<td>All colors not defined in this table</td>
+<td>black</td>
+<td>Coloring,
+ if any, will be highly dependent on user needs.</td>
 </tr>
 <tr>
-<td>
- <p>
- Axis
- </p>
- </td>
-<td>
- <p>
- On, internal style
- </p>
- </td>
-<td>
- <p>
- Most graphs include an axis of some kind. The internal axis style is
- used because this seems to be the default behavior in many textbooks
- I have owned.
- </p>
- </td>
+<td>Axis</td>
+<td>On, internal style</td>
+<td>Most graphs
+ include an axis of some kind. The internal axis style is used because
+ this seems to be the default behavior in many textbooks I have owned.</td>
 </tr>
 <tr>
-<td>
- <p>
- Coordinate precision
- </p>
- </td>
-<td>
- <p>
- 3 decimal digits
- </p>
- </td>
-<td>
- <p>
- Sufficient 1 in 1000 precision for typical small plots. (Higher precision
- will increase svg file size).
- </p>
- </td>
+<td>Coordinate precision</td>
+<td>3 decimal digits</td>
+<td>Sufficient
+ 1 in 1000 precision for typical small plots. (Higher precision will
+ increase svg file size).</td>
 </tr>
 <tr>
-<td>
- <p>
- Distance between major X ticks
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="number">3</span> <span class="identifier">units</span></code>
- </p>
- </td>
-<td>
- <p>
- Reasonably fits into a plot window.
- </p>
- </td>
+<td>Distance between major X ticks</td>
+<td><code class="computeroutput"><span class="number">3</span> <span class="identifier">units</span></code></td>
+<td>Reasonably fits
+ into a plot window.</td>
 </tr>
 <tr>
-<td>
- <p>
- Font size of the legend title
- </p>
- </td>
-<td>
- <p>
- 12
- </p>
- </td>
-<td>
- <p>
- Reasonable when paired with the image size.
- </p>
- </td>
+<td>Font size of the legend title</td>
+<td>12</td>
+<td>Reasonable
+ when paired with the image size.</td>
 </tr>
 <tr>
-<td>
- <p>
- Font size of the X Label
- </p>
- </td>
-<td>
- <p>
- 12
- </p>
- </td>
-<td>
- <p>
- Reasonable when paired with the image size.
- </p>
- </td>
+<td>Font size of the X Label</td>
+<td>12</td>
+<td>Reasonable
+ when paired with the image size.</td>
 </tr>
 <tr>
-<td>
- <p>
- Font size of the title
- </p>
- </td>
-<td>
- <p>
- 30
- </p>
- </td>
-<td>
- <p>
- Makes the title stand out.
- </p>
- </td>
+<td>Font size of the title</td>
+<td>30</td>
+<td>Makes
+ the title stand out.</td>
 </tr>
 <tr>
-<td>
- <p>
- Grid lines
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">All</span> <span class="identifier">off</span></code>
- </p>
- </td>
-<td>
- <p>
- Grid lines are a user's personal choice, so default is none.
- </p>
- </td>
+<td>Grid lines</td>
+<td><code class="computeroutput"><span class="identifier">All</span> <span class="identifier">off</span></code></td>
+<td>Grid lines are
+ a user's personal choice, so default is none.</td>
 </tr>
 <tr>
-<td>
- <p>
- Image background
- </p>
- </td>
-<td>
- <p>
- white
- </p>
- </td>
-<td>
- <p>
- Coloring, if any, will be highly dependent on user needs.
- </p>
- </td>
+<td>Image background</td>
+<td>white</td>
+<td>Coloring,
+ if any, will be highly dependent on user needs.</td>
 </tr>
 <tr>
-<td>
- <p>
- Image size
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="number">500</span> <span class="identifier">by</span>
- <span class="number">350</span></code>
- </p>
- </td>
-<td>
- <p>
- Details discernable. The image is easily viewable by those using 800x600
- monitors.
- </p>
- </td>
+<td>Image size</td>
+<td><code class="computeroutput"><span class="number">500</span> <span class="identifier">by</span> <span class="number">350</span></code></td>
+<td>Details
+ discernable. The image is easily viewable by those using 800x600 monitors.</td>
 </tr>
 <tr>
-<td>
- <p>
- Legend
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Off</span></code>
- </p>
- </td>
-<td>
- <p>
- The goal of the defaults is to provide the cleanest possible plot as
- a default. Excluding the legend meets this goal.
- </p>
- </td>
+<td>Legend</td>
+<td><code class="computeroutput"><span class="identifier">Off</span></code></td>
+<td>The
+ goal of the defaults is to provide the cleanest possible plot as a
+ default. Excluding the legend meets this goal.</td>
 </tr>
 <tr>
-<td>
- <p>
- Legend background
- </p>
- </td>
-<td>
- <p>
- white
- </p>
- </td>
-<td>
- <p>
- Coloring, if any, will be highly dependent on user needs.
- </p>
- </td>
+<td>Legend background</td>
+<td>white</td>
+<td>Coloring,
+ if any, will be highly dependent on user needs.</td>
 </tr>
 <tr>
-<td>
- <p>
- Major tick length
- </p>
- </td>
-<td>
- <p>
- 20 pixels
- </p>
- </td>
-<td>
- <p>
- Tasteful default when paired with the window size. This also makes
- the major ticks easily distinguishable from the minor ticks.
- </p>
- </td>
+<td>Major tick length</td>
+<td>20 pixels</td>
+<td>Tasteful
+ default when paired with the window size. This also makes the major
+ ticks easily distinguishable from the minor ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- Major tick width
- </p>
- </td>
-<td>
- <p>
- 2 pixels
- </p>
- </td>
-<td>
- <p>
- Major ticks are more obvious than minor ticks.
- </p>
- </td>
+<td>Major tick width</td>
+<td>2 pixels</td>
+<td>Major
+ ticks are more obvious than minor ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- Minor tick length
- </p>
- </td>
-<td>
- <p>
- 10 pixels
- </p>
- </td>
-<td>
- <p>
- Tasteful default when compared with the size of the grid. This makes
- the minor ticks less obvious than the major ticks.
- </p>
- </td>
+<td>Minor tick length</td>
+<td>10 pixels</td>
+<td>Tasteful
+ default when compared with the size of the grid. This makes the minor
+ ticks less obvious than the major ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- Minor tick width
- </p>
- </td>
-<td>
- <p>
- 1 pixel
- </p>
- </td>
-<td>
- <p>
- This makes the minor tick less obvious than the major ticks.
- </p>
- </td>
+<td>Minor tick width</td>
+<td>1 pixel</td>
+<td>This makes
+ the minor tick less obvious than the major ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- Number of minor X ticks between each major X tick
- </p>
- </td>
-<td>
- <p>
- 2
- </p>
- </td>
-<td>
- <p>
- This allows the minor ticks to appear on the integer values.
- </p>
- </td>
+<td>Number of minor X ticks between each major X tick</td>
+<td>2</td>
+<td>This
+ allows the minor ticks to appear on the integer values.</td>
 </tr>
 <tr>
-<td>
- <p>
- Plot Window
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Off</span></code>
- </p>
- </td>
-<td>
- <p>
- Initially off because it is the simplest case.
- </p>
- </td>
+<td>Plot Window</td>
+<td><code class="computeroutput"><span class="identifier">Off</span></code></td>
+<td>Initially
+ off because it is the simplest case.</td>
 </tr>
 <tr>
-<td>
- <p>
- Plot window background
- </p>
- </td>
-<td>
- <p>
- white
- </p>
- </td>
-<td>
- <p>
- Coloring, if any, will be highly dependent on user needs.
- </p>
- </td>
+<td>Plot window background</td>
+<td>white</td>
+<td>Coloring,
+ if any, will be highly dependent on user needs.</td>
 </tr>
 <tr>
-<td>
- <p>
- Title
- </p>
- </td>
-<td>
- <p>
- On, <code class="computeroutput"><span class="string">"Plot of data"</span></code>
- </p>
- </td>
-<td>
- <p>
- The title is on because this is one of the most basic elements of a
- graph. The title is set to a default because when <code class="computeroutput"><span class="identifier">title_on</span>
- <span class="special">==</span> <span class="keyword">true</span></code>,
- something should display.
- </p>
- </td>
+<td>Title</td>
+<td>On, <code class="computeroutput"><span class="string">"Plot
+ of data"</span></code>
+</td>
+<td>The title is on because
+ this is one of the most basic elements of a graph. The title is set
+ to a default because when <code class="computeroutput"><span class="identifier">title_on</span> <span class="special">==</span> <span class="keyword">true</span></code>,
+ something should display.</td>
 </tr>
 <tr>
-<td>
- <p>
- Title size
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="number">30</span></code>
- </p>
- </td>
-<td>
- <p>
- This is clearly visible in a variety of image sizes.
- </p>
- </td>
+<td>Title size</td>
+<td><code class="computeroutput"><span class="number">30</span></code></td>
+<td>This
+ is clearly visible in a variety of image sizes.</td>
 </tr>
 <tr>
+<td>X Axis Label</td>
 <td>
- <p>
- X Axis Label
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="string">"X Axis"</span></code>, Off
- </p>
- </td>
-<td>
- <p>
- "X Axis" is the label because <span class="emphasis"><em>something</em></span>
- should display were the user to turn on the X-axis label without setting
- text.
- </p>
- </td>
+<code class="computeroutput"><span class="string">"X
+ Axis"</span></code>, Off</td>
+<td>"X Axis" is
+ the label because <span class="emphasis"><em>something</em></span> should display were
+ the user to turn on the X-axis label without setting text.</td>
 </tr>
 <tr>
-<td>
- <p>
- X Axis Label Size
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="number">12</span></code>
- </p>
- </td>
-<td>
- <p>
- This is a reasonable size at the default image size.
- </p>
- </td>
+<td>X Axis Label Size</td>
+<td><code class="computeroutput"><span class="number">12</span></code></td>
+<td>This
+ is a reasonable size at the default image size.</td>
 </tr>
 <tr>
-<td>
- <p>
- X Grid (Major and Minor)
- </p>
- </td>
-<td>
- <p>
- Off
- </p>
- </td>
-<td>
- <p>
- Turned off in the interest of providing simple, clean plots.
- </p>
- </td>
+<td>X Grid (Major and Minor)</td>
+<td>Off</td>
+<td>Turned
+ off in the interest of providing simple, clean plots.</td>
 </tr>
 <tr>
-<td>
- <p>
- X Range
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="special">(-</span><span class="number">10</span><span class="special">,</span> <span class="number">10</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Traditional plot viewport (but almost all plots will need to set both
- X and Y ranges).
- </p>
- </td>
+<td>X Range</td>
+<td><code class="computeroutput"><span class="special">(-</span><span class="number">10</span><span class="special">,</span> <span class="number">10</span><span class="special">)</span></code></td>
+<td>Traditional
+ plot viewport (but almost all plots will need to set both X and Y ranges).</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break">
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../plot_defaults.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../plot_defaults.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="2d_defaults.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../plot_defaults.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../plot_defaults.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="2d_defaults.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/plot_defaults/2d_defaults.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/plot_defaults/2d_defaults.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/plot_defaults/2d_defaults.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,571 +1,245 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> svg_2d_plot
- Defaults</title>
+<title>svg_2d_plot Defaults</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../plot_defaults.html" title=" Plot Defaults">
-<link rel="prev" href="1d_defaults.html" title=" svg_1d_plot
- Defaults">
-<link rel="next" href="../interface.html" title=" Public Interfaces">
+<link rel="up" href="../plot_defaults.html" title="Plot Defaults">
+<link rel="prev" href="1d_defaults.html" title="svg_1d_plot Defaults">
+<link rel="next" href="../interface.html" title="Public Interfaces">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="1d_defaults.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../plot_defaults.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="1d_defaults.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../plot_defaults.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../interface.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.plot_defaults.2d_defaults"></a><a href="2d_defaults.html" title=" svg_2d_plot
- Defaults"> <code class="computeroutput"><span class="identifier">svg_2d_plot</span></code>
- Defaults</a>
-</h3></div></div></div>
+<a name="svg_plot.plot_defaults.2d_defaults"></a> <code class="computeroutput"><span class="identifier">svg_2d_plot</span></code> Defaults</h3></div></div></div>
 <p>
         You may have noticed that there are certain defaults that are true at the
         beginning of the plotting. Here is a table of the defaults:
       </p>
-<div class="table">
-<a name="id691188"></a><p class="title"><b>Table 2. Default Values</b></p>
-<div class="table-contents"><table class="table" summary="Default Values">
+<div class="informaltable">
+<h5>
+<a name="id396242"></a>
+ <span class="table-title">Default Values</span>
+ </h5>
+<table class="table">
 <colgroup>
 <col>
 <col>
 <col>
 </colgroup>
 <thead><tr>
-<th>
- <p>
- object
- </p>
- </th>
-<th>
- <p>
- Default value
- </p>
- </th>
-<th>
- <p>
- Rationale
- </p>
- </th>
+<th>object</th>
+<th>Default value</th>
+<th>Rationale</th>
 </tr></thead>
 <tbody>
 <tr>
-<td>
- <p>
- All colors not defined in this table
- </p>
- </td>
-<td>
- <p>
- black
- </p>
- </td>
-<td>
- <p>
- Coloring, if any, will be highly dependent on user needs.
- </p>
- </td>
+<td>All colors not defined in this table</td>
+<td>black</td>
+<td>Coloring,
+ if any, will be highly dependent on user needs.</td>
 </tr>
 <tr>
-<td>
- <p>
- Axis
- </p>
- </td>
-<td>
- <p>
- On, internal style
- </p>
- </td>
-<td>
- <p>
- Most graphs include an axis of some kind. The internal axis style is
- used because this seems to be the default behavior in many textbooks
- I have owned.
- </p>
- </td>
+<td>Axis</td>
+<td>On, internal style</td>
+<td>Most graphs
+ include an axis of some kind. The internal axis style is used because
+ this seems to be the default behavior in many textbooks I have owned.</td>
 </tr>
 <tr>
-<td>
- <p>
- Distance between major X ticks
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="number">3</span> <span class="identifier">units</span></code>
- </p>
- </td>
-<td>
- <p>
- Reasonably fits into a plot window.
- </p>
- </td>
+<td>Distance between major X ticks</td>
+<td><code class="computeroutput"><span class="number">3</span> <span class="identifier">units</span></code></td>
+<td>Reasonably fits
+ into a plot window.</td>
 </tr>
 <tr>
-<td>
- <p>
- Font size of the legend title
- </p>
- </td>
-<td>
- <p>
- 12
- </p>
- </td>
-<td>
- <p>
- Reasonable when paired with the image size.
- </p>
- </td>
+<td>Font size of the legend title</td>
+<td>12</td>
+<td>Reasonable
+ when paired with the image size.</td>
 </tr>
 <tr>
-<td>
- <p>
- Font size of the X Label
- </p>
- </td>
-<td>
- <p>
- 12
- </p>
- </td>
-<td>
- <p>
- Reasonable when paired with the image size.
- </p>
- </td>
+<td>Font size of the X Label</td>
+<td>12</td>
+<td>Reasonable
+ when paired with the image size.</td>
 </tr>
 <tr>
-<td>
- <p>
- Font size of the title
- </p>
- </td>
-<td>
- <p>
- 30
- </p>
- </td>
-<td>
- <p>
- Makes the title stand out.
- </p>
- </td>
+<td>Font size of the title</td>
+<td>30</td>
+<td>Makes
+ the title stand out.</td>
 </tr>
 <tr>
-<td>
- <p>
- Grid lines
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">All</span> <span class="identifier">off</span></code>
- </p>
- </td>
-<td>
- <p>
- Grid lines are a user's personal choice, so default is off
- </p>
- </td>
+<td>Grid lines</td>
+<td><code class="computeroutput"><span class="identifier">All</span> <span class="identifier">off</span></code></td>
+<td>Grid lines are
+ a user's personal choice, so default is off</td>
 </tr>
 <tr>
-<td>
- <p>
- Image background
- </p>
- </td>
-<td>
- <p>
- white
- </p>
- </td>
-<td>
- <p>
- Coloring, if any, will be highly dependent on user needs.
- </p>
- </td>
+<td>Image background</td>
+<td>white</td>
+<td>Coloring,
+ if any, will be highly dependent on user needs.</td>
 </tr>
 <tr>
-<td>
- <p>
- Image size
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="number">500</span> <span class="identifier">by</span>
- <span class="number">350</span></code>
- </p>
- </td>
-<td>
- <p>
- Details discernable. The image is easily viewable by those using 800x600
- monitors.
- </p>
- </td>
+<td>Image size</td>
+<td><code class="computeroutput"><span class="number">500</span> <span class="identifier">by</span> <span class="number">350</span></code></td>
+<td>Details
+ discernable. The image is easily viewable by those using 800x600 monitors.</td>
 </tr>
 <tr>
-<td>
- <p>
- Legend
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Off</span></code>
- </p>
- </td>
-<td>
- <p>
- The goal of the defaults is to provide the cleanest possible plot as
- a default. Excluding the legend meets this goal.
- </p>
- </td>
+<td>Legend</td>
+<td><code class="computeroutput"><span class="identifier">Off</span></code></td>
+<td>The
+ goal of the defaults is to provide the cleanest possible plot as a
+ default. Excluding the legend meets this goal.</td>
 </tr>
 <tr>
-<td>
- <p>
- Legend background
- </p>
- </td>
-<td>
- <p>
- white
- </p>
- </td>
-<td>
- <p>
- Coloring, if any, will be highly dependent on user needs.
- </p>
- </td>
+<td>Legend background</td>
+<td>white</td>
+<td>Coloring,
+ if any, will be highly dependent on user needs.</td>
 </tr>
 <tr>
-<td>
- <p>
- Major tick length
- </p>
- </td>
-<td>
- <p>
- 20 pixels
- </p>
- </td>
-<td>
- <p>
- Tasteful default when paired with the window size. This also makes
- the major ticks easily distinguishable from the minor ticks.
- </p>
- </td>
+<td>Major tick length</td>
+<td>20 pixels</td>
+<td>Tasteful
+ default when paired with the window size. This also makes the major
+ ticks easily distinguishable from the minor ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- Major tick width
- </p>
- </td>
-<td>
- <p>
- 2 pixels
- </p>
- </td>
-<td>
- <p>
- Major ticks are more obvious than minor ticks.
- </p>
- </td>
+<td>Major tick width</td>
+<td>2 pixels</td>
+<td>Major
+ ticks are more obvious than minor ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- Minor tick length
- </p>
- </td>
-<td>
- <p>
- 10 pixels
- </p>
- </td>
-<td>
- <p>
- Tasteful default when compared with the size of the grid. This makes
- the minor ticks less obvious than the major ticks.
- </p>
- </td>
+<td>Minor tick length</td>
+<td>10 pixels</td>
+<td>Tasteful
+ default when compared with the size of the grid. This makes the minor
+ ticks less obvious than the major ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- Minor tick width
- </p>
- </td>
-<td>
- <p>
- 1 pixel
- </p>
- </td>
-<td>
- <p>
- This makes the minor tick less obvious than the major ticks.
- </p>
- </td>
+<td>Minor tick width</td>
+<td>1 pixel</td>
+<td>This makes
+ the minor tick less obvious than the major ticks.</td>
 </tr>
 <tr>
-<td>
- <p>
- Number of minor X ticks between each major X tick
- </p>
- </td>
-<td>
- <p>
- 2
- </p>
- </td>
-<td>
- <p>
- This allows the minor ticks to appear on the integers.
- </p>
- </td>
+<td>Number of minor X ticks between each major X tick</td>
+<td>2</td>
+<td>This
+ allows the minor ticks to appear on the integers.</td>
 </tr>
 <tr>
-<td>
- <p>
- Plot Window
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">Off</span></code>
- </p>
- </td>
-<td>
- <p>
- Initially off because it is the simplest case.
- </p>
- </td>
+<td>Plot Window</td>
+<td><code class="computeroutput"><span class="identifier">Off</span></code></td>
+<td>Initially
+ off because it is the simplest case.</td>
 </tr>
 <tr>
-<td>
- <p>
- Plot window background
- </p>
- </td>
-<td>
- <p>
- white
- </p>
- </td>
-<td>
- <p>
- Coloring, if any, will be highly dependent on user needs.
- </p>
- </td>
+<td>Plot window background</td>
+<td>white</td>
+<td>Coloring,
+ if any, will be highly dependent on user needs.</td>
 </tr>
 <tr>
-<td>
- <p>
- Title
- </p>
- </td>
-<td>
- <p>
- On, <code class="computeroutput"><span class="string">"Plot of data"</span></code>
- </p>
- </td>
-<td>
- <p>
- The title is on because this is one of the most basic elements of a
- graph. The title is set to a default because when <code class="computeroutput"><span class="identifier">title_on</span>
- <span class="special">==</span> <span class="keyword">true</span></code>,
- <span class="emphasis"><em>something</em></span> should display.
- </p>
- </td>
+<td>Title</td>
+<td>On, <code class="computeroutput"><span class="string">"Plot
+ of data"</span></code>
+</td>
+<td>The title is on because
+ this is one of the most basic elements of a graph. The title is set
+ to a default because when <code class="computeroutput"><span class="identifier">title_on</span> <span class="special">==</span> <span class="keyword">true</span></code>,
+ <span class="emphasis"><em>something</em></span> should display.</td>
 </tr>
 <tr>
-<td>
- <p>
- Title size
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="number">30</span></code>
- </p>
- </td>
-<td>
- <p>
- This is clearly visible in a variety of image sizes.
- </p>
- </td>
+<td>Title size</td>
+<td><code class="computeroutput"><span class="number">30</span></code></td>
+<td>This
+ is clearly visible in a variety of image sizes.</td>
 </tr>
 <tr>
+<td>X Axis Label</td>
 <td>
- <p>
- X Axis Label
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="string">"X Axis"</span></code>, Off
- </p>
- </td>
-<td>
- <p>
- "X Axis" is the label because <span class="emphasis"><em>something</em></span>
- should display were the user to turn on the X axis label without setting
- text.
- </p>
- </td>
+<code class="computeroutput"><span class="string">"X
+ Axis"</span></code>, Off</td>
+<td>"X Axis" is
+ the label because <span class="emphasis"><em>something</em></span> should display were
+ the user to turn on the X axis label without setting text.</td>
 </tr>
 <tr>
-<td>
- <p>
- X Axis Label Size
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="number">12</span></code>
- </p>
- </td>
-<td>
- <p>
- This is a reasonable size at the default image size.
- </p>
- </td>
+<td>X Axis Label Size</td>
+<td><code class="computeroutput"><span class="number">12</span></code></td>
+<td>This
+ is a reasonable size at the default image size.</td>
 </tr>
 <tr>
-<td>
- <p>
- X Grid (Major and Minor)
- </p>
- </td>
-<td>
- <p>
- Off
- </p>
- </td>
-<td>
- <p>
- Turned off in the interest of providing simple, clean plots.
- </p>
- </td>
+<td>X Grid (Major and Minor)</td>
+<td>Off</td>
+<td>Turned
+ off in the interest of providing simple, clean plots.</td>
 </tr>
 <tr>
-<td>
- <p>
- X Range
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="special">(-</span><span class="number">10</span><span class="special">,</span> <span class="number">10</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Traditional plot viewport.
- </p>
- </td>
+<td>X Range</td>
+<td><code class="computeroutput"><span class="special">(-</span><span class="number">10</span><span class="special">,</span> <span class="number">10</span><span class="special">)</span></code></td>
+<td>Traditional
+ plot viewport.</td>
 </tr>
 <tr>
+<td>Y Axis Label</td>
 <td>
- <p>
- Y Axis Label
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="string">"Y Axis"</span></code>, Off
- </p>
- </td>
-<td>
- <p>
- "Y Axis" is the label because <span class="emphasis"><em>something</em></span>
- should display were the user to turn on the X axis label without setting
- text, and this is the most informative.
- </p>
- </td>
+<code class="computeroutput"><span class="string">"Y
+ Axis"</span></code>, Off</td>
+<td>"Y Axis" is
+ the label because <span class="emphasis"><em>something</em></span> should display were
+ the user to turn on the X axis label without setting text, and this
+ is the most informative.</td>
 </tr>
 <tr>
-<td>
- <p>
- Y Axis Label Size
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="number">12</span></code>
- </p>
- </td>
-<td>
- <p>
- This is a reasonable size at the default image size.
- </p>
- </td>
+<td>Y Axis Label Size</td>
+<td><code class="computeroutput"><span class="number">12</span></code></td>
+<td>This
+ is a reasonable size at the default image size.</td>
 </tr>
 <tr>
-<td>
- <p>
- Y Grid (Major and Minor)
- </p>
- </td>
-<td>
- <p>
- Off
- </p>
- </td>
-<td>
- <p>
- Turned off in the interest of providing simple, clean plots.
- </p>
- </td>
+<td>Y Grid (Major and Minor)</td>
+<td>Off</td>
+<td>Turned
+ off in the interest of providing simple, clean plots.</td>
 </tr>
 <tr>
-<td>
- <p>
- Y Range
- </p>
- </td>
-<td>
- <p>
- <code class="computeroutput"><span class="special">(-</span><span class="number">10</span><span class="special">,</span> <span class="number">10</span><span class="special">)</span></code>
- </p>
- </td>
-<td>
- <p>
- Traditional plot viewport.
- </p>
- </td>
+<td>Y Range</td>
+<td><code class="computeroutput"><span class="special">(-</span><span class="number">10</span><span class="special">,</span> <span class="number">10</span><span class="special">)</span></code></td>
+<td>Traditional
+ plot viewport.</td>
 </tr>
 </tbody>
-</table></div>
+</table>
 </div>
-<br class="table-break">
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="1d_defaults.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../plot_defaults.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../interface.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="1d_defaults.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../plot_defaults.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../interface.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/svg_boxplot_tutorial.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/svg_boxplot_tutorial.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/svg_boxplot_tutorial.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,51 +1,42 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Tutorial: Boxplot</title>
+<title>Tutorial: Boxplot</title>
 <link rel="stylesheet" href="../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../index.html" title="SVG_Plot">
 <link rel="up" href="../index.html" title="SVG_Plot">
-<link rel="prev" href="tutorial_2d_code_simple/2d_special.html" title=" Tutorial:
- 2D Special Features">
-<link rel="next" href="svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html" title="
- Simple Example">
+<link rel="prev" href="tutorial_2d_code_simple/2d_special.html" title="Tutorial: 2D Special Features">
+<link rel="next" href="svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html" title="Simple Example">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="tutorial_2d_code_simple/2d_special.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="tutorial_2d_code_simple/2d_special.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="svg_plot.svg_boxplot_tutorial"></a> Tutorial: Boxplot
-</h2></div></div></div>
+<a name="svg_plot.svg_boxplot_tutorial"></a> Tutorial: Boxplot</h2></div></div></div>
 <div class="toc"><dl>
-<dt><span class="section"><a href="svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html">
- Simple Example</a></span></dt>
-<dt><span class="section"><a href="svg_boxplot_tutorial/svg_boxplot_tutorial_full.html">
- Full Boxplot Layout</a></span></dt>
+<dt><span class="section"> Simple Example</span></dt>
+<dt><span class="section"> Full Boxplot Layout</span></dt>
 </dl></div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="tutorial_2d_code_simple/2d_special.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="tutorial_2d_code_simple/2d_special.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/svg_boxplot_tutorial/svg_boxplot_tutorial_simple.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,35 +1,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>
- Simple Example</title>
+<title>Simple Example</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../svg_boxplot_tutorial.html" title=" Tutorial: Boxplot">
-<link rel="prev" href="../svg_boxplot_tutorial.html" title=" Tutorial: Boxplot">
-<link rel="next" href="svg_boxplot_tutorial_full.html" title="
- Full Boxplot Layout">
+<link rel="up" href="../svg_boxplot_tutorial.html" title="Tutorial: Boxplot">
+<link rel="prev" href="../svg_boxplot_tutorial.html" title="Tutorial: Boxplot">
+<link rel="next" href="svg_boxplot_tutorial_full.html" title="Full Boxplot Layout">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../svg_boxplot_tutorial.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../svg_boxplot_tutorial.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="svg_boxplot_tutorial_full.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../svg_boxplot_tutorial.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../svg_boxplot_tutorial.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="svg_boxplot_tutorial_full.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple"></a><a href="svg_boxplot_tutorial_simple.html" title="
- Simple Example">
- Simple Example</a>
-</h3></div></div></div>
+<a name="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple"></a> Simple Example</h3></div></div></div>
 <pre class="programlisting">
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">svg_plot</span><span class="special">/</span><span class="identifier">svg_2d_plot</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">svg</span><span class="special">;</span>
@@ -83,34 +78,30 @@
 <span class="special">}</span>
 </pre>
 <a name="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.image_boxplot_simple_svg"></a><h5>
-<a name="id688405"></a>
- <a href="svg_boxplot_tutorial_simple.html#svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.image_boxplot_simple_svg">Image
- boxplot_simple.svg</a>
+<a name="id394329"></a>
+ Image boxplot_simple.svg
       </h5>
 <p>
         <span class="inlinemediaobject"><img src="../../images/boxplot_simple.png" alt="boxplot_simple"></span>
       </p>
 <a name="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.basic_example_breakdown"></a><h5>
-<a name="id688452"></a>
- <a href="svg_boxplot_tutorial_simple.html#svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.basic_example_breakdown">Basic
- Example Breakdown</a>
+<a name="id394359"></a>
+ Basic Example Breakdown
       </h5>
 <p>
         Let's examine what this does.
       </p>
 <a name="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.initializing_a_new_boxplot"></a><h5>
-<a name="id688484"></a>
- <a href="svg_boxplot_tutorial_simple.html#svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.initializing_a_new_boxplot">Initializing
- a new boxplot</a>
+<a name="id394376"></a>
+ Initializing a new boxplot
       </h5>
 <p>
         This initializes a new boxplot. This also sets the many default values. 4
         svg_boxplot my_plot;
       </p>
 <a name="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_a_color"></a><h5>
-<a name="id688518"></a>
- <a href="svg_boxplot_tutorial_simple.html#svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_a_color">Setting
- a color</a>
+<a name="id394392"></a>
+ Setting a color
       </h5>
 <p>
         This sets the border color of the entire image to black (not just the plot
@@ -120,9 +111,8 @@
 <span class="identifier">my_plot</span><span class="special">.</span><span class="identifier">background_border_color</span><span class="special">(</span><span class="identifier">black</span><span class="special">);</span>
 </pre>
 <a name="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_strings_in_the_plot"></a><h5>
-<a name="id688591"></a>
- <a href="svg_boxplot_tutorial_simple.html#svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_strings_in_the_plot">Setting
- strings in the plot</a>
+<a name="id394443"></a>
+ Setting strings in the plot
       </h5>
 <p>
         The following code sets the title that appears at the top of the graph, the
@@ -135,9 +125,8 @@
       <span class="special">.</span><span class="identifier">y_label</span><span class="special">(</span><span class="string">"Population Size"</span><span class="special">);</span>
 </pre>
 <a name="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_axis_information"></a><h4>
-<a name="id688720"></a>
- <a href="svg_boxplot_tutorial_simple.html#svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_axis_information">Setting
- axis information</a>
+<a name="id394542"></a>
+ Setting axis information
       </h4>
 <p>
         Axis information for the X-axis is very limited, as the coordinate system
@@ -151,9 +140,8 @@
         .y_major_interval(20);
       </p>
 <a name="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.writing_to_a_file"></a><h5>
-<a name="id688763"></a>
- <a href="svg_boxplot_tutorial_simple.html#svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.writing_to_a_file">Writing
- to a file</a>
+<a name="id394565"></a>
+ Writing to a file
       </h5>
 <p>
         This finally writes our plot to the file "boxplot_simple.svg".
@@ -167,15 +155,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../svg_boxplot_tutorial.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../svg_boxplot_tutorial.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="svg_boxplot_tutorial_full.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../svg_boxplot_tutorial.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../svg_boxplot_tutorial.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="svg_boxplot_tutorial_full.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/todo.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/todo.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/todo.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,31 +1,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> To Do List</title>
+<title>To Do List</title>
 <link rel="stylesheet" href="../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../index.html" title="SVG_Plot">
 <link rel="up" href="../index.html" title="SVG_Plot">
-<link rel="prev" href="howtouse.html" title=" How To Use This Documentation">
-<link rel="next" href="color.html" title=" Colors">
+<link rel="prev" href="howtouse.html" title="How To Use This Documentation">
+<link rel="next" href="color.html" title="Colors">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="howtouse.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="color.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="howtouse.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="color.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="svg_plot.todo"></a> To Do List
-</h2></div></div></div>
+<a name="svg_plot.todo"></a> To Do List</h2></div></div></div>
 <p>
       This project is still in development, so here is a list of things that I would
       still like to do by the end of the project. I recommend you check here first
@@ -90,15 +89,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="howtouse.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="color.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="howtouse.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="color.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,53 +1,43 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Tutorial: 2D</title>
+<title>Tutorial: 2D</title>
 <link rel="stylesheet" href="../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../index.html" title="SVG_Plot">
 <link rel="up" href="../index.html" title="SVG_Plot">
-<link rel="prev" href="tutorial_code_1d_simple/1d_special.html" title=" Tutorial:
- 1D Special Features">
-<link rel="next" href="tutorial_2d_code_simple/2d_simple_code_example.html" title="
- Simple Code Example">
+<link rel="prev" href="tutorial_code_1d_simple/1d_special.html" title="Tutorial: 1D Special Features">
+<link rel="next" href="tutorial_2d_code_simple/2d_simple_code_example.html" title="Simple Code Example">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="tutorial_code_1d_simple/1d_special.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tutorial_2d_code_simple/2d_simple_code_example.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="tutorial_code_1d_simple/1d_special.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="tutorial_2d_code_simple/2d_simple_code_example.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="svg_plot.tutorial_2d_code_simple"></a> Tutorial: 2D
-</h2></div></div></div>
+<a name="svg_plot.tutorial_2d_code_simple"></a> Tutorial: 2D</h2></div></div></div>
 <div class="toc"><dl>
-<dt><span class="section"><a href="tutorial_2d_code_simple/2d_simple_code_example.html">
- Simple Code Example</a></span></dt>
-<dt><span class="section"><a href="tutorial_2d_code_simple/full_2d_layout.html"> Tutorial:
- Fuller Layout Example</a></span></dt>
-<dt><span class="section"><a href="tutorial_2d_code_simple/2d_special.html"> Tutorial:
- 2D Special Features</a></span></dt>
+<dt><span class="section"> Simple Code Example</span></dt>
+<dt><span class="section"> Tutorial: Fuller Layout Example</span></dt>
+<dt><span class="section"> Tutorial: 2D Special Features</span></dt>
 </dl></div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="tutorial_code_1d_simple/1d_special.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tutorial_2d_code_simple/2d_simple_code_example.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="tutorial_code_1d_simple/1d_special.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="tutorial_2d_code_simple/2d_simple_code_example.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple/2d_simple_code_example.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple/2d_simple_code_example.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple/2d_simple_code_example.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,35 +1,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>
- Simple Code Example</title>
+<title>Simple Code Example</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../tutorial_2d_code_simple.html" title=" Tutorial: 2D">
-<link rel="prev" href="../tutorial_2d_code_simple.html" title=" Tutorial: 2D">
-<link rel="next" href="full_2d_layout.html" title=" Tutorial:
- Fuller Layout Example">
+<link rel="up" href="../tutorial_2d_code_simple.html" title="Tutorial: 2D">
+<link rel="prev" href="../tutorial_2d_code_simple.html" title="Tutorial: 2D">
+<link rel="next" href="full_2d_layout.html" title="Tutorial: Fuller Layout Example">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../tutorial_2d_code_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_2d_code_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="full_2d_layout.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../tutorial_2d_code_simple.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_2d_code_simple.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="full_2d_layout.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.tutorial_2d_code_simple.2d_simple_code_example"></a><a href="2d_simple_code_example.html" title="
- Simple Code Example">
- Simple Code Example</a>
-</h3></div></div></div>
+<a name="svg_plot.tutorial_2d_code_simple.2d_simple_code_example"></a> Simple Code Example</h3></div></div></div>
 <pre class="programlisting">
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">svg_plot</span><span class="special">/</span><span class="identifier">svg_2d_plot</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">svg</span><span class="special">;</span>
@@ -65,17 +60,15 @@
 <span class="special">}</span>
 </pre>
 <a name="svg_plot.tutorial_2d_code_simple.2d_simple_code_example.resulting_simple_2d_example_image"></a><h5>
-<a name="id683728"></a>
- <a href="2d_simple_code_example.html#svg_plot.tutorial_2d_code_simple.2d_simple_code_example.resulting_simple_2d_example_image">Resulting
- Simple_2D Example Image</a>
+<a name="id390381"></a>
+ Resulting Simple_2D Example Image
       </h5>
 <p>
         <span class="inlinemediaobject"><img src="../../images/2d_simple.png" alt="2d_simple"></span>
       </p>
 <a name="svg_plot.tutorial_2d_code_simple.2d_simple_code_example.simple_2d_example_breakdown"></a><h5>
-<a name="id683775"></a>
- <a href="2d_simple_code_example.html#svg_plot.tutorial_2d_code_simple.2d_simple_code_example.simple_2d_example_breakdown">Simple_2D
- Example Breakdown</a>
+<a name="id390410"></a>
+ Simple_2D Example Breakdown
       </h5>
 <p>
         Let's examine what this does.
@@ -107,8 +100,9 @@
           that the legend will show up.
         </li>
 <li>
-<code class="computeroutput"><span class="identifier">x_range</span><span class="special">(-</span><span class="number">1</span><span class="special">,</span> <span class="number">11</span><span class="special">)</span></code> means that the axis displayed will be
- between -1 and 11, as you can see in the above images.
+<code class="computeroutput"><span class="identifier">x_range</span><span class="special">(-</span><span class="number">1</span><span class="special">,</span> <span class="number">11</span><span class="special">)</span></code> means
+ that the axis displayed will be between -1 and 11, as you can see in the
+ above images.
         </li>
 <li>
 <code class="computeroutput"><span class="identifier">background_border_color</span><span class="special">(</span><span class="identifier">black</span><span class="special">)</span></code> sets the border around the image to <code class="computeroutput"><span class="identifier">black</span></code>. Ordinarily it is left to be the
@@ -142,15 +136,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../tutorial_2d_code_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_2d_code_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="full_2d_layout.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../tutorial_2d_code_simple.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_2d_code_simple.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="full_2d_layout.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple/2d_special.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple/2d_special.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple/2d_special.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,39 +1,33 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Tutorial:
- 2D Special Features</title>
+<title>Tutorial: 2D Special Features</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../tutorial_2d_code_simple.html" title=" Tutorial: 2D">
-<link rel="prev" href="full_2d_layout.html" title=" Tutorial:
- Fuller Layout Example">
-<link rel="next" href="../svg_boxplot_tutorial.html" title=" Tutorial: Boxplot">
+<link rel="up" href="../tutorial_2d_code_simple.html" title="Tutorial: 2D">
+<link rel="prev" href="full_2d_layout.html" title="Tutorial: Fuller Layout Example">
+<link rel="next" href="../svg_boxplot_tutorial.html" title="Tutorial: Boxplot">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="full_2d_layout.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_2d_code_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../svg_boxplot_tutorial.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="full_2d_layout.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_2d_code_simple.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../svg_boxplot_tutorial.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.tutorial_2d_code_simple.2d_special"></a><a href="2d_special.html" title=" Tutorial:
- 2D Special Features"> Tutorial:
- 2D Special Features</a>
-</h3></div></div></div>
+<a name="svg_plot.tutorial_2d_code_simple.2d_special"></a> Tutorial: 2D Special Features</h3></div></div></div>
 <a name="svg_plot.tutorial_2d_code_simple.2d_special.y_axis_grid_lines"></a><h5>
-<a name="id686443"></a>
- <a href="2d_special.html#svg_plot.tutorial_2d_code_simple.2d_special.y_axis_grid_lines">Y-Axis
- Grid Lines</a>
+<a name="id392705"></a>
+ Y-Axis Grid Lines
       </h5>
 <p>
         If you would like horizontal grid lines that go across the graph, you can
@@ -70,11 +64,9 @@
 <span class="identifier">my_plot</span><span class="special">.</span><span class="identifier">y_major_grid_color</span><span class="special">(</span><span class="identifier">lightblue</span><span class="special">)</span> <span class="comment">// Darker color for major grid.
 </span> <span class="special">.</span><span class="identifier">y_minor_grid_color</span><span class="special">(</span><span class="identifier">azure</span><span class="special">);</span> <span class="comment">// lighter color for minor grid.
 </span></pre>
-<a name="svg_plot.tutorial_2d_code_simple.2d_special.external_y_axis_style"></a><h5>
-<a name="id686821"></a>
- <a href="2d_special.html#svg_plot.tutorial_2d_code_simple.2d_special.external_y_axis_style">External
- Y Axis Style</a>
- </h5>
+<p>
+ [heading External Y Axis Style]
+ </p>
 <p>
         For an alternate way to display a regular axis, you can use an external style:
       </p>
@@ -83,7 +75,7 @@
 </pre>
 <div class="important"><table border="0" summary="Important">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../../../../../../../../../trunk/doc/html/images/important.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../images/important.png"></td>
 <th align="left">Important</th>
 </tr>
 <tr><td align="left" valign="top"><p>
@@ -91,11 +83,9 @@
           will not turn the axis back on. To do that, you must call <code class="computeroutput"><span class="identifier">axis_on</span><span class="special">(</span><span class="keyword">true</span><span class="special">)</span></code>
         </p></td></tr>
 </table></div>
-<a name="svg_plot.tutorial_2d_code_simple.2d_special.fill_the_area_between_the_plot_and_the_axis"></a><h5>
-<a name="id686955"></a>
- <a href="2d_special.html#svg_plot.tutorial_2d_code_simple.2d_special.fill_the_area_between_the_plot_and_the_axis">Fill
- the area between the plot and the axis</a>
- </h5>
+<p>
+ [heading Fill the area between the plot and the axis]
+ </p>
 <p>
         When there is a call to the plot() method, define <code class="computeroutput"><span class="identifier">_area_fill_color</span></code>
       </p>
@@ -112,9 +102,8 @@
         <span class="inlinemediaobject"><img src="../../images/2d_area_fill.png" alt="2d_area_fill"></span>
       </p>
 <a name="svg_plot.tutorial_2d_code_simple.2d_special.curve_interpolation"></a><h5>
-<a name="id687160"></a>
- <a href="2d_special.html#svg_plot.tutorial_2d_code_simple.2d_special.curve_interpolation">Curve
- Interpolation</a>
+<a name="id393265"></a>
+ Curve Interpolation
       </h5>
 <p>
         If you would like an <span class="bold"><strong>interpolated curve</strong></span>
@@ -132,7 +121,7 @@
       </p>
 <div class="warning"><table border="0" summary="Warning">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="../../../../../../../../../../trunk/doc/html/images/warning.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="../../images/warning.png"></td>
 <th align="left">Warning</th>
 </tr>
 <tr><td align="left" valign="top"><p>
@@ -147,15 +136,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="full_2d_layout.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_2d_code_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../svg_boxplot_tutorial.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="full_2d_layout.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_2d_code_simple.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../svg_boxplot_tutorial.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple/full_2d_layout.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple/full_2d_layout.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_2d_code_simple/full_2d_layout.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,36 +1,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Tutorial:
- Fuller Layout Example</title>
+<title>Tutorial: Fuller Layout Example</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../tutorial_2d_code_simple.html" title=" Tutorial: 2D">
-<link rel="prev" href="2d_simple_code_example.html" title="
- Simple Code Example">
-<link rel="next" href="2d_special.html" title=" Tutorial:
- 2D Special Features">
+<link rel="up" href="../tutorial_2d_code_simple.html" title="Tutorial: 2D">
+<link rel="prev" href="2d_simple_code_example.html" title="Simple Code Example">
+<link rel="next" href="2d_special.html" title="Tutorial: 2D Special Features">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="2d_simple_code_example.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_2d_code_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="2d_special.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="2d_simple_code_example.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_2d_code_simple.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="2d_special.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.tutorial_2d_code_simple.full_2d_layout"></a><a href="full_2d_layout.html" title=" Tutorial:
- Fuller Layout Example"> Tutorial:
- Fuller Layout Example</a>
-</h3></div></div></div>
+<a name="svg_plot.tutorial_2d_code_simple.full_2d_layout"></a> Tutorial: Fuller Layout Example</h3></div></div></div>
 <pre class="programlisting">
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">svg_plot</span><span class="special">/</span><span class="identifier">svg_2d_plot</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">svg</span><span class="special">;</span>
@@ -133,15 +127,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="2d_simple_code_example.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_2d_code_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="2d_special.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="2d_simple_code_example.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_2d_code_simple.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="2d_special.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,52 +1,43 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Tutorial: 1D</title>
+<title>Tutorial: 1D</title>
 <link rel="stylesheet" href="../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../index.html" title="SVG_Plot">
 <link rel="up" href="../index.html" title="SVG_Plot">
-<link rel="prev" href="color.html" title=" Colors">
-<link rel="next" href="tutorial_code_1d_simple/tutorial_code_1d_example.html" title="
- Simple 1D Example">
+<link rel="prev" href="svg_tutorial.html" title="SVG tutorial">
+<link rel="next" href="tutorial_code_1d_simple/tutorial_code_1d_example.html" title="Simple 1D Example">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="color.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tutorial_code_1d_simple/tutorial_code_1d_example.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="svg_tutorial.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="tutorial_code_1d_simple/tutorial_code_1d_example.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="svg_plot.tutorial_code_1d_simple"></a> Tutorial: 1D
-</h2></div></div></div>
+<a name="svg_plot.tutorial_code_1d_simple"></a> Tutorial: 1D</h2></div></div></div>
 <div class="toc"><dl>
-<dt><span class="section"><a href="tutorial_code_1d_simple/tutorial_code_1d_example.html">
- Simple 1D Example</a></span></dt>
-<dt><span class="section"><a href="tutorial_code_1d_simple/full_1d_layout.html"> Tutorial:
- 1D Full Layout Example</a></span></dt>
-<dt><span class="section"><a href="tutorial_code_1d_simple/1d_special.html"> Tutorial:
- 1D Special Features</a></span></dt>
+<dt><span class="section"> Simple 1D Example</span></dt>
+<dt><span class="section"> Tutorial: 1D Full Layout Example</span></dt>
+<dt><span class="section"> Tutorial: 1D Special Features</span></dt>
 </dl></div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="color.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tutorial_code_1d_simple/tutorial_code_1d_example.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="svg_tutorial.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="tutorial_code_1d_simple/tutorial_code_1d_example.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple/1d_special.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple/1d_special.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple/1d_special.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,40 +1,33 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Tutorial:
- 1D Special Features</title>
+<title>Tutorial: 1D Special Features</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../tutorial_code_1d_simple.html" title=" Tutorial: 1D">
-<link rel="prev" href="full_1d_layout.html" title=" Tutorial:
- 1D Full Layout Example">
-<link rel="next" href="../tutorial_2d_code_simple.html" title=" Tutorial: 2D">
+<link rel="up" href="../tutorial_code_1d_simple.html" title="Tutorial: 1D">
+<link rel="prev" href="full_1d_layout.html" title="Tutorial: 1D Full Layout Example">
+<link rel="next" href="../tutorial_2d_code_simple.html" title="Tutorial: 2D">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="full_1d_layout.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_code_1d_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../tutorial_2d_code_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="full_1d_layout.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_code_1d_simple.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../tutorial_2d_code_simple.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.tutorial_code_1d_simple.1d_special"></a><a href="1d_special.html" title=" Tutorial:
- 1D Special Features"> Tutorial:
- 1D Special Features</a>
-</h3></div></div></div>
-<a name="svg_plot.tutorial_code_1d_simple.1d_special.x_axis_grid_lines"></a><h5>
-<a name="id682487"></a>
- <a href="1d_special.html#svg_plot.tutorial_code_1d_simple.1d_special.x_axis_grid_lines">X-Axis
- Grid Lines</a>
- </h5>
+<a name="svg_plot.tutorial_code_1d_simple.1d_special"></a> Tutorial: 1D Special Features</h3></div></div></div>
+<p>
+ [heading X-Axis Grid Lines]
+ </p>
 <p>
         If you would like vertical grid lines that go on the graph, you can make
         the following call to <code class="computeroutput"><span class="identifier">svg_1d_plot</span></code>:
@@ -57,11 +50,14 @@
         <span class="inlinemediaobject"><img src="../../images/1d_x_grid.png" alt="1d_x_grid"></span>
       </p>
 <a name="svg_plot.tutorial_code_1d_simple.1d_special.x_axis_external_style"></a><h5>
-<a name="id682709"></a>
- <a href="1d_special.html#svg_plot.tutorial_code_1d_simple.1d_special.x_axis_external_style">X-Axis
- External Style</a>
+<a name="id389511"></a>
+ X-Axis External Style
       </h5>
 <p>
+ TODO this has ben changed to x_up_ticks and x_down_ticks and y_left_ticks
+ and y_right_ticks.
+ </p>
+<p>
         By default the 'ticks' face into the plot area. Alternatively, you can use
         an 'external' style, so that the ticks face out from the X- and/or Y-axes.
       </p>
@@ -78,7 +74,7 @@
       </p>
 <div class="important"><table border="0" summary="Important">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../../../../../../../../../trunk/doc/html/images/important.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../images/important.png"></td>
 <th align="left">Important</th>
 </tr>
 <tr><td align="left" valign="top"><p>
@@ -89,15 +85,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="full_1d_layout.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_code_1d_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../tutorial_2d_code_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="full_1d_layout.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_code_1d_simple.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="../tutorial_2d_code_simple.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple/full_1d_layout.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple/full_1d_layout.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple/full_1d_layout.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,36 +1,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Tutorial:
- 1D Full Layout Example</title>
+<title>Tutorial: 1D Full Layout Example</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../tutorial_code_1d_simple.html" title=" Tutorial: 1D">
-<link rel="prev" href="tutorial_code_1d_example.html" title="
- Simple 1D Example">
-<link rel="next" href="1d_special.html" title=" Tutorial:
- 1D Special Features">
+<link rel="up" href="../tutorial_code_1d_simple.html" title="Tutorial: 1D">
+<link rel="prev" href="tutorial_code_1d_example.html" title="Simple 1D Example">
+<link rel="next" href="1d_special.html" title="Tutorial: 1D Special Features">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="tutorial_code_1d_example.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_code_1d_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="1d_special.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="tutorial_code_1d_example.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_code_1d_simple.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="1d_special.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.tutorial_code_1d_simple.full_1d_layout"></a><a href="full_1d_layout.html" title=" Tutorial:
- 1D Full Layout Example"> Tutorial:
- 1D Full Layout Example</a>
-</h3></div></div></div>
+<a name="svg_plot.tutorial_code_1d_simple.full_1d_layout"></a> Tutorial: 1D Full Layout Example</h3></div></div></div>
 <pre class="programlisting">
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">svg_plot</span><span class="special">/</span><span class="identifier">svg_1d_plot</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">svg</span><span class="special">;</span>
@@ -134,15 +128,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="tutorial_code_1d_example.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_code_1d_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="1d_special.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="tutorial_code_1d_example.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_code_1d_simple.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="1d_special.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple/tutorial_code_1d_example.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple/tutorial_code_1d_example.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_code_1d_simple/tutorial_code_1d_example.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,35 +1,30 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>
- Simple 1D Example</title>
+<title>Simple 1D Example</title>
 <link rel="stylesheet" href="../../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../../index.html" title="SVG_Plot">
-<link rel="up" href="../tutorial_code_1d_simple.html" title=" Tutorial: 1D">
-<link rel="prev" href="../tutorial_code_1d_simple.html" title=" Tutorial: 1D">
-<link rel="next" href="full_1d_layout.html" title=" Tutorial:
- 1D Full Layout Example">
+<link rel="up" href="../tutorial_code_1d_simple.html" title="Tutorial: 1D">
+<link rel="prev" href="../tutorial_code_1d_simple.html" title="Tutorial: 1D">
+<link rel="next" href="full_1d_layout.html" title="Tutorial: 1D Full Layout Example">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../tutorial_code_1d_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_code_1d_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="full_1d_layout.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../tutorial_code_1d_simple.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_code_1d_simple.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="full_1d_layout.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="svg_plot.tutorial_code_1d_simple.tutorial_code_1d_example"></a><a href="tutorial_code_1d_example.html" title="
- Simple 1D Example">
- Simple 1D Example</a>
-</h3></div></div></div>
+<a name="svg_plot.tutorial_code_1d_simple.tutorial_code_1d_example"></a> Simple 1D Example</h3></div></div></div>
 <pre class="programlisting">
 <span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">svg_plot</span><span class="special">/</span><span class="identifier">svg_1d_plot</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
 <span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">svg</span><span class="special">;</span>
@@ -66,9 +61,8 @@
         <span class="inlinemediaobject"><img src="../../images/1d_simple.png" alt="1d_simple"></span>
       </p>
 <a name="svg_plot.tutorial_code_1d_simple.tutorial_code_1d_example.a_note_on_syntax"></a><h5>
-<a name="id679578"></a>
- <a href="tutorial_code_1d_example.html#svg_plot.tutorial_code_1d_simple.tutorial_code_1d_example.a_note_on_syntax">A
- Note On Syntax</a>
+<a name="id386840"></a>
+ A Note On Syntax
       </h5>
 <p>
         The syntax "<code class="computeroutput"><span class="identifier">my_plot</span><span class="special">.</span><span class="identifier">title</span><span class="special">(</span><span class="string">"Hello"</span><span class="special">).</span><span class="identifier">legend_on</span><span class="special">(</span><span class="keyword">true</span><span class="special">)...</span></code>"
@@ -101,9 +95,8 @@
         code to read more clearly!
       </p>
 <a name="svg_plot.tutorial_code_1d_simple.tutorial_code_1d_example.simple_1d_example_breakdown"></a><h5>
-<a name="id679988"></a>
- <a href="tutorial_code_1d_example.html#svg_plot.tutorial_code_1d_simple.tutorial_code_1d_example.simple_1d_example_breakdown">Simple
- 1D Example Breakdown</a>
+<a name="id387184"></a>
+ Simple 1D Example Breakdown
       </h5>
 <p>
         Let's examine what this does in detail.
@@ -134,8 +127,9 @@
           that the legend will display.
         </li>
 <li>
-<code class="computeroutput"><span class="identifier">x_range</span><span class="special">(-</span><span class="number">1</span><span class="special">,</span> <span class="number">11</span><span class="special">)</span></code> means that the axis displayed will be
- between -1 and 11, as you can see in the above image.
+<code class="computeroutput"><span class="identifier">x_range</span><span class="special">(-</span><span class="number">1</span><span class="special">,</span> <span class="number">11</span><span class="special">)</span></code> means
+ that the axis displayed will be between -1 and 11, as you can see in the
+ above image.
         </li>
 </ul></div>
 <pre class="programlisting">
@@ -163,15 +157,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="../tutorial_code_1d_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_code_1d_simple.html"><img src="../../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="full_1d_layout.html"><img src="../../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="../tutorial_code_1d_simple.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorial_code_1d_simple.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="full_1d_layout.html"><img src="../../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_stylesheet.html
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_stylesheet.html (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/html/svg_plot/tutorial_stylesheet.html 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,34 +1,32 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title> Stylesheet Tutorial</title>
+<title>Stylesheet Tutorial</title>
 <link rel="stylesheet" href="../../../../../../../../../trunk/doc/html/boostbook.css" type="text/css">
-<meta name="generator" content="DocBook XSL Stylesheets V1.70.1">
+<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
 <link rel="start" href="../index.html" title="SVG_Plot">
 <link rel="up" href="../index.html" title="SVG_Plot">
-<link rel="prev" href="svg_boxplot_tutorial/svg_boxplot_tutorial_full.html" title="
- Full Boxplot Layout">
-<link rel="next" href="behavior.html" title=" Behavior">
+<link rel="prev" href="svg_boxplot_tutorial/svg_boxplot_tutorial_full.html" title="Full Boxplot Layout">
+<link rel="next" href="behavior.html" title="Behavior">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table cellpadding="2" width="100%"><tr>
+<table cellpadding="2" width="100%">
 <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../trunk/boost.png"></td>
 <td align="center">Home</td>
 <td align="center">Libraries</td>
 <td align="center">People</td>
 <td align="center">FAQ</td>
 <td align="center">More</td>
-</tr></table>
+</table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="svg_boxplot_tutorial/svg_boxplot_tutorial_full.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="behavior.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="svg_boxplot_tutorial/svg_boxplot_tutorial_full.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="behavior.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h2 class="title" style="clear: both">
-<a name="svg_plot.tutorial_stylesheet"></a> Stylesheet Tutorial
-</h2></div></div></div>
+<a name="svg_plot.tutorial_stylesheet"></a> Stylesheet Tutorial</h2></div></div></div>
 <p>
- To include a stylesheet into a program with any plot, simply use the <code class="computeroutput"><span class="identifier">load_stylesheet</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">filename</span><span class="special">)</span></code> method to load an external stylesheet. To
+ To include a stylesheet into a program with any plot, simply use the <code class="computeroutput"><span class="identifier">load_stylesheet</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">filename</span><span class="special">)</span></code> method to load an external stylesheet. To
       load the file ./style.css, for instance, we would call:
     </p>
 <pre class="programlisting">
@@ -47,9 +45,8 @@
       </li>
 </ul></div>
 <a name="svg_plot.tutorial_stylesheet.using_the_stylesheet"></a><h5>
-<a name="id689017"></a>
- <a href="tutorial_stylesheet.html#svg_plot.tutorial_stylesheet.using_the_stylesheet">Using the
- stylesheet</a>
+<a name="id394756"></a>
+ Using the stylesheet
     </h5>
 <p>
       Here is the output file for the simple 1D example, as used before:
@@ -62,7 +59,7 @@
     </p>
 <div class="caution"><table border="0" summary="Caution">
 <tr>
-<td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../../../../../../../../trunk/doc/html/images/caution.png"></td>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../images/caution.png"></td>
 <th align="left">Caution</th>
 </tr>
 <tr><td align="left" valign="top"><p>
@@ -79,15 +76,11 @@
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
 <td align="left"></td>
-<td align="right"><div class="copyright-footer">Copyright © 2007 Jake Voytko<p>
- Distributed under the Boost Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- </p>
-</div></td>
+<td align="right"><small>Copyright © 2007 Jake Voytko</small></td>
 </tr></table>
 <hr>
 <div class="spirit-nav">
-<a accesskey="p" href="svg_boxplot_tutorial/svg_boxplot_tutorial_full.html"><img src="../../../../../../../../../trunk/doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../../../../../trunk/doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="behavior.html"><img src="../../../../../../../../../trunk/doc/html/images/next.png" alt="Next"></a>
+<a accesskey="p" href="svg_boxplot_tutorial/svg_boxplot_tutorial_full.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="behavior.html"><img src="../images/next.png" alt="Next"></a>
 </div>
 </body>
 </html>

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/interface.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/interface.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,347 @@
+[section:interface Public Interfaces]
+
+[include svg_interface.qbk]
+
+[section:svg_1d_plot_interface `svg_1d_plot` Public Interface]
+[table 1D_plot Miscellaneous Functions
+ [[Signature] [Description]]
+ [[`svg_1d_plot()`] [See the defaults section for further details]]
+ [[`svg_1d_plot& image_size(unsigned int, unsigned int)`] [Sets the size of the image produced (pixels)]]
+ [[`svg_1d_plot& coord_precision(int)`] [Sets the precision output for coordinates (decimal digits, default 3).]]
+ [[`svg_1d_plot& document_title(std::string)`] [Sets title for the SVG XML document (not the plot). <title>My Document title</title>]]
+ [[`svg_1d_plot& description(std::string)`] [Sets description for the SVG XML document, as comment and XML, for example: <!-- My Document description -->
+<desc>My Document description</desc>]]
+
+ [[`svg_1d_plot& legend_title_font_size(unsigned int)`] [Sets the font size for the legend title.]]
+ [[`svg_1d_plot& title(const std::string&)`] [Sets the string to be used for the title.]]
+ [[`svg_1d_plot& title_font_size(unsigned int)`] [Sets the font size for the title.]]
+ [[`svg_1d_plot& write(const std::string&)`] [Writes the plot to the file passed as a parameter.]]
+ [[`svg_1d_plot& write(ostream&)`] [Writes the plot to a stream passed as a parameter.]]]
+
+[table 1D_plot Commands
+ [[Signature] [Description]]
+ [[`svg_1d_plot& axis_on(bool)`] [Sets whether the axis is on (true) or off.]]
+ [[`svg_1d_plot& legend_on(bool)`] [Sets whether the legend is on (true) or off.]]
+ [[`svg_1d_plot& plot_window_on(bool)`] [Sets whether the plot will be displayed in its own window, or will be "full screen" in the image.]]
+ [[`svg_1d_plot& title_on(bool)`] [Determines whether or not the image title is displayed.]]
+ [[`svg_1d_plot& x_axis_on(bool)`] [Determines whether or not the X-axis is displayed.]]
+ [[`svg_1d_plot& x_external_style_on(bool)`] [Determines whether or not the axis is inside or outside of the plot. Defaults is `false`.]]
+ [[`svg_1d_plot& x_label_on(bool)`] [Sets whether or not the X-axis label will show]]
+ [[`svg_1d_plot& x_major_labels_on(bool)`] [sets whether or not the major ticks will be labelled on the X-axis]]
+ [[`svg_1d_plot& x_major_grid_on(bool)`] [Determines whether or not the major grid on the X axis will be displayed.]]
+ [[`svg_1d_plot& x_minor_grid_on(bool)`] [Determines whether or not the minor grid on the X axis will be displayed.]]
+ [[`svg_1d_plot& y_axis_on(bool)`] [Determines whether or not the Y axis is displayed.]]]
+
+[table 1D_plot Colors
+ [[Signature] [Description]]
+ [[`svg_1d_plot& background_border_color(const svg_color &col)`] [Set the background border color for the legend as `col`, an RGB color.]]
+ [[`svg_1d_plot& background_color(const svg_color &col)`] [Set the background color for the whole image.]]
+ [[`svg_1d_plot& legend_background_color(const svg_color &col)`] [Set the background color for the legend as `col`, an RGB color.]]
+ [[`svg_1d_plot& legend_border_color(const svg_color &col)`] [Set the border color for the legend as `col`, an RGB color.]]
+ [[`svg_1d_plot& plot_background_color(const svg_color &col)`] [Set the color of the plot area. Note: this only goes into effect if plot_area(true) has been called.]]
+ [[`svg_1d_plot& title_color(const svg_color &col)`] [Set the title color.]]
+ [[`svg_1d_plot& x_axis_color(const svg_color &col)`] [Sets the color of the lines that form the axis.]]
+ [[`svg_1d_plot& x_label_color(const svg_color &col)`] [Sets the color of the labels that go along the X axis.]]
+ [[`svg_1d_plot& x_major_grid_color(const svg_color &col)`] [Sets the color of the grid that runs perpindicular to the X axis.]]
+ [[`svg_1d_plot& x_major_tick_color(const svg_color &col)`] [Sets the color of the major ticks of the x-axis.]]
+ [[`svg_1d_plot& x_minor_grid_color(const svg_color &col)`] [Sets the color of the minor grid of the x-axis]]
+ [[`svg_1d_plot& x_minor_tick_color(const svg_color &col)`] [Sets the color of the minor ticks of the x-axis.]]
+ ]
+
+[table 1D_plot X-Axis Definition
+ [[Signature] [Description]]
+ [[`svg_1d_plot& x_axis_width(unsigned int)`] [Sets the stroke width of the x-axis.] ]
+ [[`svg_1d_plot& x_label(const std::string&)`] [Sets the label of the x-axis. This does not guarantee that it will be shown. You must call `x_label_on(true)` to display.] ]
+ [[`svg_1d_plot& x_major_interval(double)`] [Sets the distance (in Cartesian units) between ticks on the x-axis.] ]
+ [[`svg_1d_plot& x_major_tick_length(int)`] [Sets the length (pixels) of the x-axis major ticks.] ]
+ [[`svg_1d_plot& x_major_tick_width(unsigned int)`] [Sets the width (pixels) of the major ticks on the x-axis.] ]
+ [[`svg_1d_plot& x_minor_tick_length(int)`] [Sets the length (pixels) of the x-axis minor tick lengths.] ]
+ [[`svg_1d_plot& x_minor_tick_width(unsigned int)`] [Sets the width (pixels) of the minor ticks on the x-axis.] ]
+ [[`svg_1d_plot& x_num_minor_ticks(int)`] [Sets the number of minor ticks between each major tick.] ]
+ [[`svg_1d_plot& x_range(double x1, double x2)`] [Sets the scale of the x axis from x1 to x2. Throws an exception if x2<=x1. ] ]
+]
+
+[heading The 1D_plot `plot()` Method]
+The `plot()` method is defined using Boost.Parameter. As such, it supports a
+few extra named parameters, as well as a deduced parameter.
+
+[table 1D_plot Required parameter
+[[ID] [Type (* is a wildcard)] [Description]]
+[[_container] [*] [Any object that can return an iterator with begin() and end()]]
+[[_title] [`std::string`] [The name of this data series.]]]
+
+[table 1D_plot Deduced parameter
+[[ID] [Type] [Description] [Default]]
+[[_fill_color] [`svg_color`] [Color that shows *inside the circle* being drawn.] [white] ]]
+
+[table 1D_plot Optional Parameters
+[[ID] [Type] [Description] [Default]]
+[[_stroke_color] [`svg_color`] [Outline of the circle that is being drawn.] [black] ]
+[[_point_style] [`point_shape`] [Shape of the point. Options currently are: [^none], [^circle], and [^square].] [circle]]
+[[_size] [`unsigned int`] [Height/width of the circle and square.] [10]]
+[[_x_functor] [*] [A class or functor that contains a conversion function. You will not have to worry about this, unless you are trying to plot a container of type that does not have a conversion to double, for example, age of a user-defined type `humans`. For example:
+``
+class my_functor
+{
+ typdef double result_type;
+
+ double operator()(const human& _hum)
+ {
+ return (double)(_hum.age());
+ }
+}
+
+// ...
+
+plot(my_plot, my_data, "Lions", _x_functor = my_functor());
+``
+][
+`boost_default_convert` is sufficient in all cases where the data stored in
+the container can be directly cast to a `double`.]]]
+
+Here are some examples of using of the 1D_plot `plot` method:
+[h4 Using 1D_plot fill and stroke colors]
+
+ my_plot.plot(my_data, "Lions",
+ _fill_color = red,
+ _stroke_color = black);
+
+This has the same effect as the following:
+
+ my_plot.plot(my_data, "Lions", red, black); // Order is significant:
+ // fill is red and stroke is black.
+
+and also the same effect as:
+
+ my_plot.plot(my_data, "Lions",
+ _stroke_color = black,
+ _fill_color = red);
+
+Since _fill_color is a Boost.Parameter deduced parameter, when two svg_colors are used in the same function call, they are always inferred in the following order:
+(fill, stroke).
+[endsect] [/svg_1d_plot_interface]
+
+[section:svg_2d_plot_interface `svg_2d_plot` Public Interface]
+[table 2D_plot Miscellaneous
+ [[Signature] [Description]]
+ [[`svg_2d_plot()`] [See the defaults section for further details.]]
+ [[`svg_2d_plot& image_size(unsigned int, unsigned int)`] [Sets the size (pixels) of the plot image produced.]]
+ [[`svg_2d_plot& title(const std::string&)`] [Sets the string to be used for the title.]]
+ [[`svg_2d_plot& title_font_size(unsigned int)`] [Sets the font size for the title.]]
+ [[`svg_2d_plot& legend_title_font_size(unsigned int)`] [Sets the font size for the legend title.]]]
+
+[table 2D_plot Commands
+ [[Signature] [Description]]
+ [[`svg_2d_plot& axis_on(bool)`] [Sets whether the axis is on (true) or off.]]
+ [[`svg_2d_plot& legend_on(bool)`] [Sets whether the legend is on (true) or off.]]
+ [[`svg_2d_plot& plot_window_on(bool)`] [Sets whether the plot will be displayed in its own window, or will be "full screen" in the image.]]
+ [[`svg_2d_plot& title_on(bool)`] [Determines whether or not the image title is displayed.]]
+ [[`svg_2d_plot& x_label_on(bool)`] [Sets whether or not the X axis label will show.]]
+ [[`svg_2d_plot& x_major_grid_on(bool)`] [Determines whether or not the major grid on the X axis will be displayed.]]
+ [[`svg_2d_plot& x_major_labels_on(bool)`] [sets whether or not the major ticks will be labelled on the x axis.]]
+ [[`svg_2d_plot& x_minor_grid_on(bool)`] [Determines whether or not the minor grid on the X axis will be displayed.]]
+ [[`svg_2d_plot& y_label_on(bool)`] [Sets whether or not the Y axis label will show.]]
+ [[`svg_2d_plot& y_major_grid_on(bool)`] [Determines whether or not the major grid on the Y axis will be displayed.]]
+ [[`svg_2d_plot& y_major_labels_on(bool)`] [sets whether or not the major ticks will be labelled on the Y axis.]]
+ [[`svg_2d_plot& y_minor_grid_on(bool)`] [Determines whether or not the minor grid on the Y axis will be displayed.]]]
+
+[table 2D_plot Colors
+ [[Signature] [Description]]
+ [[`svg_2d_plot& title_color(const svg_color &col)`] [Set the plot title color.]]
+ [[`svg_2d_plot& background_color(const svg_color &col)`] [Set the background color for the whole image.]]
+ [[`svg_2d_plot& legend_background_color(const svg_color &col)`] [Set the background color for the legend as `col`, an RGB color.]]
+ [[`svg_2d_plot& legend_border_color(const svg_color &col)`] [Set the border color for the legend as `col`, an RGB color.]]
+ [[`svg_2d_plot& background_border_color(const svg_color &col)`] [Set the background border color for the legend as `col`, an RGB color.]]
+ [[`svg_2d_plot& plot_background_color(const svg_color &col)`] [Set the color of the plot area. Note: this only goes into effect if plot_area(true) has been called.]]
+ [[`svg_2d_plot& x_axis_color(const svg_color &col)`] [Sets the color of the lines that form the axis.]]
+ [[`svg_2d_plot& x_label_color(const svg_color &col)`] [Sets the color of the labels that go along the X axis.]]
+ [[`svg_2d_plot& x_major_tick_color(const svg_color &col)`] [Sets the color of the major ticks of the x-axis.]]
+ [[`svg_2d_plot& x_major_grid_color(const svg_color &col)`] [Sets the color of the grid that runs perpindicular to the X axis]]
+ [[`svg_2d_plot& x_minor_tick_color(const svg_color &col)`] [Sets the color of the minor ticks of the x-axis.]]
+ [[`svg_2d_plot& y_axis_color(const svg_color &col)`] [Sets the color of the lines that form the Y axis.]]
+ [[`svg_2d_plot& y_label_color(const svg_color &col)`] [Sets the color of the labels that go along the Y axis.]]
+ [[`svg_2d_plot& y_major_tick_color(const svg_color &col)`] [Sets the color of the major ticks of the Y-axis.]]
+ [[`svg_2d_plot& y_major_grid_color(const svg_color &col)`] [Sets the color of the grid that runs perpindicular to the Y axis.]]
+ [[`svg_2d_plot& y_minor_tick_color(const svg_color &col)`] [Sets the color of the minor ticks of the Y-axis.]]
+ ]
+
+[table 2D_plot Axis Information
+ [[Signature] [Description]]
+ [[`svg_2d_plot& x_axis_width(unsigned int)`] [Sets the stroke width (pixels) of the x-axis.] ]
+ [[`svg_2d_plot& x_label(const std::string&)`] [Sets the label of the x-axis. You must set `x_label(true)` to display the label.] ]
+ [[`svg_2d_plot& x_major_interval(double)`] [Sets the distance (Cartesian units) between ticks on the x-axis.] ]
+ [[`svg_2d_plot& x_major_tick_length(int)`] [Sets the length (pixels) of the x-axis major ticks.] ]
+ [[`svg_2d_plot& x_major_tick_width(unsigned int)`] [Sets the width (pixels) of the major ticks on the x-axis.] ]
+ [[`svg_2d_plot& x_minor_tick(unsigned int)`] [Sets the length (pixels) of the x-axis minor ticks.] ]
+ [[`svg_2d_plot& x_minor_tick_length(int)`] [Sets the length (pixels) of the x-axis minor tick lengths.] ]
+ [[`svg_2d_plot& x_minor_tick_width(unsigned int)`] [Sets the width (pixels) of the minor ticks on the x-axis.] ]
+ [[`svg_2d_plot& x_num_minor_ticks(int)`] [Sets the number of minor ticks between each major tick.] ]
+ [[`svg_2d_plot& x_range(double x1, double x2)`] [Sets the scale of the x axis from x1 to x2. Throws an exception if x2 <= x1.] ]
+ [[`svg_2d_plot& y_axis_width(unsigned int)`] [Sets the stroke width of the x-axis.] ]
+ [[`svg_2d_plot& y_label(const std::string&)`] [Sets the label of the Y-axis. You must set `x_label(true)` to display the label.] ]
+ [[`svg_2d_plot& y_major_tick(double)`] [Sets the distance (in Cartesian units) between ticks on the Y axis] ]
+ [[`svg_2d_plot& y_major_tick_length(int)`] [Sets the length (pixels) of the Y axis major ticks.] ]
+ [[`svg_2d_plot& y_major_tick_width(unsigned int)`] [Sets the width (pixels) of the major ticks on the Y axis.] ]
+ [[`svg_2d_plot& y_minor_tick(unsigned int)`] [Sets the length (pixels) of the Y axis minor ticks.] ]
+ [[`svg_2d_plot& y_major_tick_length(int)`] [Sets the length (pixels) of the Y axis minor tick lengths.] ]
+ [[`svg_2d_plot& y_minor_tick_width(unsigned int)`] [Sets the width (pixels) of the minor ticks on the Y axis.] ]
+ [[`svg_2d_plot& y_num_minor_ticks(int)`] [Sets the number of minor ticks between each major tick.] ]
+ [[`svg_2d_plot& y_scale(double y1, double y2)`] [Sets the scale of the Y axis from y1 to y2. Throws an exception if y2 <= y1.] ]
+]
+
+(Note: Getters omitted for now. TODO)
+
+[heading The `plot()` Method]
+The `plot()` method is defined using Boost.Parameter. As such, it supports a
+few extra named parameters, as well as a deduced parameter.
+
+[table 2D_plot Required parameter
+[[ID] [Type (* is a wildcard)] [Description]]
+[[_container] [*] [Any object that can return an iterator with begin() and end()]]
+[[_title] [`std::string`] [The name of this series]]]
+
+[table 2D_plot Deduced parameter
+[[ID] [Type] [Description] [Default]]
+[[_fill_color] [`svg_color`] [This is the color that shows up inside of the circle that is
+being drawn] [white] ]]
+
+[table 2D_plot Optional Parameters
+[[ID] [Type] [Description] [Default]]
+[[_bezier_on] [`bool`] [ This determines whether or not Bézier curve interpolation will be applied to the plot lines. It is important to note that the curve interpolation is still in its infancy, and should only be used with reasonably nice data sets]]
+[[_line_on] [`bool`] [ This determines whether or not there are lines drawn between data points.] [false]]
+[[_line_color] [`bool`] [ This determines the color of the lines between data points.] [black ]]
+[[_area_fill_color] [`svg_color`][Defining this enables the "Fill Area Under Axis" feature. the color you define will be the fill color between a line and the area under the axis. This only takes effect if `_line_on = true` is called.]]
+[[_stroke_color] [`svg_color`] [The outline of the circle that is being drawn.] [black] ]
+[[_point_style] [`point_shape`] [This is the shape of the point. Options currently are between [^none], [^circle], and [^square].] [circle]]
+[[_size] [`unsigned int`] [This is the height/width of the circle and square.] [10]]
+[[_x_functor] [*] [A class or that contains a conversion function. You will not have to worry about this, unless you are trying to accomplish stuff like plotting a vector of humans. For example:
+``
+class my_functor
+{
+ typdef pair<double, double> result_type;
+
+ pair<double, double> operator()(const human& _hum) const
+ {
+ return pair<double, double>(i, _hum.age());
+ }
+}
+
+// snip
+
+plot(my_plot, my_data, "People", _x_functor = my_functor());
+``
+][
+`boost_default_2d_convert` (the default) is sufficient in all cases where the data stored in
+the container can be directly cast to a double.]]]
+
+Here are some examples of correct uses:
+[h3 Using fill and stroke colors]
+
+ my_plot.(my_data, "Lions",
+ _fill_color = red,
+ _stroke_color = black);
+
+This has the same effect as the following:
+
+ my_plot.plot(my_data, "Lions", red, black);
+
+and also the same effect as:
+
+ my_plot.plot(my_data, "Lions",
+ _stroke_color = black,
+ _fill_color = red);
+
+Since _fill_color is a deduced parameter, when two svg_colors are used in the
+same function call, they are always inferred in the following order: (fill,
+stroke).
+[endsect] [/section:svg_2d_plot_interface]
+
+[section:svg_boxplot_interface `svg_boxplot` Public Interface]
+[table Boxplot Miscellaneous
+ [[Signature] [Description]]
+ [[`svg_boxplot()`] [See the defaults section for further details.]]
+ [[`svg_boxplot& image_size(unsigned int, unsigned int)`] [Sets the size (pixels) of the plot image produced.]]
+ [[`svg_boxplot& title(const std::string&)`] [Sets the string to be used for the plot title.]]
+ [[`svg_boxplot& title_size(unsigned int)`] [Sets the font size for the plot title.]]]
+
+[table Boxplot Commands
+ [[Signature] [Description]]
+ [[`svg_boxplot& title_on(bool)`] [Determines whether or not the image title is displayed.]]
+ [[`svg_boxplot& x_label_on(bool)`] [Sets whether or not the X-axis label will show.]]
+ [[`svg_boxplot& x_labels_on(bool)`] [sets whether or not the major ticks will be labelled on the x axis.]]
+ [[`svg_boxplot& y_label_on(bool)`] [Sets whether or not the Y-axis label will show.]]
+ [[`svg_boxplot& y_major_labels_on(bool)`] [sets whether or not the major ticks will be labelled on the Y axis.]]]
+
+[table Boxplot Colors
+ [[Signature] [Description]]
+ [[`svg_boxplot& title_color(const svg_color &col)`] [Set the title color.]]
+ [[`svg_boxplot& background_color(const svg_color &col)`] [Set the background color for the whole image.]]
+ [[`svg_boxplot& background_border_color(const svg_color &col)`] [Set the background border color for the legend as `col`, an RGB color.]]
+ [[`svg_boxplot& plot_background_color(const svg_color &col)`] [Set the color of the plot area. Note: this only goes into effect if plot_area(true) has been called.]]
+ [[`svg_boxplot& x_label_color(const svg_color &col)`] [Sets the color of the labels that go along the X-axis.]]
+ [[`svg_boxplot& x_tick_color(const svg_color &col)`] [Sets the color of the major ticks of the X-axis.]]
+ [[`svg_boxplot& y_label_color(const svg_color &col)`] [Sets the color of the labels that go along the X-axis.]]
+ [[`svg_boxplot& y_major_tick_color(const svg_color &col)`] [Sets the color of the major ticks of the Y-axis.]]
+ [[`svg_boxplot& y_minor_tick_color(const svg_color &col)`] [Sets the color of the minor ticks of the Y-axis.]]
+ ]
+
+[table Boxplot Axis Information
+ [[Signature] [Description]]
+ [[`svg_boxplot& x_label(const std::string&)`] [Sets the label of the X-axis. It will be shown *only if* `x_label(true)`.] ]
+ [[`svg_boxplot& x_tick_length(int)`] [Sets the length (pixels) of the X-axis ticks.] ]
+ [[`svg_boxplot& x_tick_width(unsigned int)`] [Sets the width (pixels) of the major ticks on the X-axis.] ]
+ [[`svg_boxplot& y_label(const std::string&)`] [Sets the label of the X-axis. It will be shown *only if* `x_label(true)`.] ]
+ [[`svg_boxplot& y_major_interval(double)`] [Sets the distance (in Cartesian units) between ticks on the Y-axis.] ]
+ [[`svg_boxplot& y_major_tick_length(int)`] [Sets the length (pixels) of the Y-axis major ticks.] ]
+ [[`svg_boxplot& y_major_tick_width(unsigned int)`] [Sets the width (pixels) of the major ticks on the Y-axis.] ]
+ [[`svg_boxplot& y_num_minor_tick(unsigned int)`] [Sets the length (pixels) of the Y-axis minor ticks.] ]
+ [[`svg_boxplot& y_major_tick_length(int)`] [Sets the length (pixels) of the Y-axis minor tick lengths.] ]
+ [[`svg_boxplot& y_minor_tick_width(unsigned int)`] [Sets the width (pixels) of the minor ticks on the Y-axis.] ]
+ [[`svg_boxplot& y_num_minor_ticks(int)`] [Sets the number of minor ticks between each major tick.] ]
+ [[`svg_boxplot& y_range(double y1, double y2)`] [Sets the scale of the Y-axis from y1 to y2. Throws an exception if y2 <= y1.] ]
+]
+
+(Note: Getters omitted for now - TODO)
+
+[heading The `plot()` Method]
+
+The `plot()` method is defined using Boost.Parameter. As such, it supports a
+few extra named parameters, as well as a deduced parameter.
+
+[table Required parameter
+[[ID] [Type (* is a wildcard)] [Description]]
+[[ctr] [*] [Any object that can return an iterator with begin() and end().]]
+[[name] [`std::string`] [The name of this data series.]]]
+
+[table Optional Parameters
+[[ID] [Type] [Description] [Default]]
+[[box_style] [`const svg_style&`] [Styles the box of the boxplot.] [`svg_style(white, black, 1)`.]]
+[[median_style] [`const svg_style&`] [Styles the median of the boxplot.] [`svg_style(white, black, 1)`.]]
+[[axis_style] [`const svg_style&`] [Styles the data range line (the line going through the middle.] [`svg_style(white, black, 1)`.]]
+[[min_whisker_style] [`const svg_style&`][Styles the lower whisker.] [`svg_style(white, black, 1)`]]
+[[max_whisker_style] [`const svg_style&`] [Styles the upper whisker.] [`svg_style(white, black, 1)`]]
+[[mild_outlier_style] [`const plot_point_style&`] [Styles outliers within 3 Inter-Quartile Ranges (IQRs) of the edges of the box] [`plot_point_style(black, black, 0)`]]
+[[ext_outlier_style] [`const plot_point_style&`] [Styles outliers more than 3 IQRs away from the box.] [`plot_point_style(white, black, 1)`]]
+[[whisker_length] [unsigned int] [Determines how long the whiskers at the end of the data range line will be] [30]]
+[[box_width] [unsigned int] [Determines the width of the box.] [60]]
+
+[[functor] [*] [A class or that contains a conversion function. You will not have to worry about this, unless you are trying to accomplish stuff like plotting a container of a user-defined class, for example human, that does not have a conversion to double. For example:
+``
+class my_functor
+{
+ typdef double result_type;
+
+ double operator()(const human& body) const
+ {
+ return double(body.age());
+ }
+}
+
+// ...
+
+plot(my_data, "People", functor = my_functor());
+``]
+[`boost_default_convert` (default) is sufficient in all cases where the data stored in the container can be directly cast to a double.]]
+] [/ table Required parameter]
+[endsect] [/section:svg_2d_plot_interface]
+[endsect] [/section:interface]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/plot_defaults.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/plot_defaults.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,77 @@
+[section:plot_defaults Plot Defaults]
+
+[section:1d_defaults `svg_1d_plot` Defaults]
+There are certain defaults, tabulated below, that are true at the beginning of the plotting.
+
+[table Default Values
+ [[object] [Default value] [Rationale]]
+ [[All colors not defined in this table] [black] [Coloring, if any, will be highly dependent on user needs.]]
+ [[Axis] [On, internal style] [Most graphs include an axis of some kind. The internal axis style is used because this seems to be the default behavior in many textbooks I have owned.]]
+ [[Coordinate precision] [3 decimal digits] [Sufficient 1 in 1000 precision for typical small plots. (Higher precision will increase svg file size).]]
+
+ [[Distance between major X ticks] [`3 units`] [Reasonably fits into a plot window.]]
+ [[Font size of the legend title] [12] [Reasonable when paired with the image size.]]
+ [[Font size of the X Label] [12] [Reasonable when paired with the image size.]]
+ [[Font size of the title] [30] [Makes the title stand out.]]
+ [[Grid lines] [`All off`] [Grid lines are a user's personal choice, so default is none.]]
+ [[Image background] [white] [Coloring, if any, will be highly dependent on user needs.]]
+ [[Image size] [`500 by 350`] [Details discernable. The image is easily viewable by those using 800x600 monitors.]]
+ [[Legend] [`Off`] [The goal of the defaults is to provide the cleanest possible plot as a default. Excluding the legend meets this goal.]]
+ [[Legend background] [white] [Coloring, if any, will be highly dependent on user needs.]]
+ [[Major tick length] [20 pixels] [Tasteful default when paired with the window size. This also makes the major ticks easily distinguishable from the minor ticks.]]
+ [[Major tick width] [2 pixels] [Major ticks are more obvious than minor ticks.]]
+ [[Minor tick length] [10 pixels] [Tasteful default when compared with the size of the grid. This makes the minor ticks less obvious than the major ticks.]]
+ [[Minor tick width] [1 pixel] [This makes the minor tick less obvious than the major ticks.]]
+ [[Number of minor X ticks between each major X tick] [2] [This allows the minor ticks to appear on the integer values.]]
+ [[Plot Window] [`Off`] [Initially off because it is the simplest case.]]
+ [[Plot window background] [white] [Coloring, if any, will be highly dependent on user needs.]]
+ [[Title] [On, `"Plot of data"`] [The title is on because this is one of the most basic elements of a graph. The title is set to a default because when `title_on == true`, something should display.]]
+ [[Title size] [`30`] [This is clearly visible in a variety of image sizes.]]
+ [[X Axis Label] [`"X Axis"`, Off] ["X Axis" is the label because /something/ should display were the user to turn on the X-axis label without setting text.]]
+ [[X Axis Label Size] [`12`] [This is a reasonable size at the default image size.]]
+ [[X Grid (Major and Minor)] [Off] [Turned off in the interest of providing simple, clean plots.]]
+ [[X Range] [`(-10, 10)`] [Traditional plot viewport (but almost all plots will need to set both X and Y ranges).]]
+ ]
+
+[endsect ][/section:1d_defaults `svg_1d_plot` Defaults]
+
+[section:2d_defaults `svg_2d_plot` Defaults]
+You may have noticed that there are certain defaults that are true at the
+beginning of the plotting. Here is a table of the defaults:
+
+[table Default Values
+ [[object] [Default value] [Rationale]]
+ [[All colors not defined in this table] [black] [Coloring, if any, will be highly dependent on user needs.]]
+ [[Axis] [On, internal style] [Most graphs include an axis of some kind. The internal axis style is used because this seems to be the default behavior in many textbooks I have owned.]]
+ [[Distance between major X ticks] [`3 units`] [Reasonably fits into a plot window.]]
+ [[Font size of the legend title] [12] [Reasonable when paired with the image size.]]
+ [[Font size of the X Label] [12] [Reasonable when paired with the image size.]]
+ [[Font size of the title] [30] [Makes the title stand out.]]
+ [[Grid lines] [`All off`] [Grid lines are a user's personal choice, so default is off]]
+ [[Image background] [white] [Coloring, if any, will be highly dependent on user needs.]]
+ [[Image size] [`500 by 350`] [Details discernable. The image is easily viewable by those using 800x600 monitors.]]
+ [[Legend] [`Off`] [The goal of the defaults is to provide the cleanest possible plot as a default. Excluding the legend meets this goal.]]
+ [[Legend background] [white] [Coloring, if any, will be highly dependent on user needs.]]
+ [[Major tick length] [20 pixels] [Tasteful default when paired with the window size. This also makes the major ticks easily distinguishable from the minor ticks.]]
+ [[Major tick width] [2 pixels] [Major ticks are more obvious than minor ticks.]]
+ [[Minor tick length] [10 pixels] [Tasteful default when compared with the size of the grid. This makes the minor ticks less obvious than the major ticks.]]
+ [[Minor tick width] [1 pixel] [This makes the minor tick less obvious than the major ticks.]]
+ [[Number of minor X ticks between each major X tick] [2] [This allows the minor ticks to appear on the integers.]]
+ [[Plot Window] [`Off`] [Initially off because it is the simplest case.]]
+ [[Plot window background] [white] [Coloring, if any, will be highly dependent on user needs.]]
+ [[Title] [On, `"Plot of data"`] [The title is on because this is one of the most basic elements of a graph. The title is set to a default because when `title_on == true`,
+ /something/ should display.]]
+ [[Title size] [`30`] [This is clearly visible in a variety of image sizes.]]
+ [[X Axis Label] [`"X Axis"`, Off] ["X Axis" is the label because /something/ should display were the user to turn on the X axis label without setting text.]]
+ [[X Axis Label Size] [`12`] [This is a reasonable size at the default image size.]]
+ [[X Grid (Major and Minor)] [Off] [Turned off in the interest of providing simple, clean plots.]]
+ [[X Range] [`(-10, 10)`] [Traditional plot viewport.]]
+ [[Y Axis Label] [`"Y Axis"`, Off] ["Y Axis" is the label because /something/ should display were the user to turn on the X axis label without setting text, and this is the most informative.]]
+ [[Y Axis Label Size] [`12`] [This is a reasonable size at the default image size.]]
+ [[Y Grid (Major and Minor)] [Off] [Turned off in the interest of providing simple, clean plots.]]
+ [[Y Range] [`(-10, 10)`] [Traditional plot viewport.]]
+ ]
+
+[endsect] [/section:2d_defaults `svg_2d_plot` Defaults]
+
+[endsect] [/section:defaults]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/rationale.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/rationale.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,332 @@
+[section:implementation Implementation & Rationale]
+
+[h4 Number of Minor ticks]
+
+`x_num_minor_ticks()` and `x_num_minor_ticks()`
+
+are provided control the number of minor ticks between the major ticks.
+
+There are a total of x_num_minor_ticks + 1 ticks for each major tick,
+for example, a major on 0, minor on 1,2,3,4, major on 5 ...
+
+For integer usually binary, octal and hexadecimal,
+num_minor_ticks = 2[super]n -1 are useful, for example
+ 1 if major ticks are even will give minor ticks on odd values),
+ 3 if major on 0, minor on 1, 2, 3 and major on 4...
+ 7 if major on 0, minor on 1,2,3,4,5,6,7 and major on 8 ...
+ 15 if major on 0, minor on 1,2,3,4,5,6,7, 8,9,A,B,C,D,E,F, major on 0x10...
+
+ For decimal based values, num_minor_ticks 1, 4, 9 are useful, for example:
+ 1 if major are even, major 0, minor 1, major 2 ...
+ 4 if major on 0, minor on 1,2,3,4, major on 5 ...
+ 9 if major on 0, minor on 1,2,3,4,5,6,7,8,9, major on 10
+
+
+
+
+
+
+
+
+[/h4 Minor ticks]
+
+
+This section provide more information about this implementation
+and some of the rationale for desing decisions.
+
+[h4 SVG Specification]
+
+[@http://www.w3.org/TR/SVG/ SVG version 1.1]
+was used in the design of this version but
+[@http://www.w3.org/TR/SVG12/ SVG 1.2 draft specification]
+is also available and appears to be final and designed to be backward compatible.
+No changes that affect the code produced
+have been detected from a quick perusal of this document.
+It is probable but untested that the svg files produced will also comply
+with the [@http://www.w3.org/TR/SVGMobile12/ Tiny svg for mobiles specification].
+
+[h4 Design]
+
+SVG would be a flat format if it weren't for
+the <g> elements: these make it parse into a tree.
+
+If each element has its own style (fill, stroke etc)
+then the .svg file size would be increased.
+(This style is used by other packages that output svg).
+
+So the [@http://www.w3.org/TR/SVG/struct.html#GElement group element]
+is used with each type given an id to allow reference back to it.
+
+svg_style_details.hpp contains a list of these groups,
+for example: PLOT_X_AXIS, PLOT_TITLE... indexing an array of string
+document id "yAxis", "title"...
+
+and these can be seen, with style information in the output, for example:
+
+ <g id="yAxis" stroke="rgb(0,0,0)"></g>
+
+ <g id="title">
+ <text x="250" y="20" text-anchor=" middle" font-size="20">Demo 1D plot</text></g>
+
+In the general case, the most that occurs grouped together is the
+style information: axis lines all share the same style information,
+points in a series all share the same color information, and this is
+also a logical grouping. One can can add a series, and then come back later
+and change the <g> element above the points, which is a single change,
+and have the change reflected on every point in the series. It seems
+this is the most logical way to represent the data in memory.
+
+
+
+
+
+[h4 Economising on .svg File Size]
+
+Some of the factors affecting the file size are:
+
+# Excessive precision of data points.
+
+If plots are to be viewed only at a modest size,
+then the precision of x and y coordinates
+does not need to be higher than about 1 in 1000,
+so a precision of about 3 decimal digits will suffice.
+
+A default of 3 decimal digits has been chosen,
+but the precision can be controlled to permit a higher resolution,
+for example on a map that is printed at 2000 dpi.
+or even only 2 decimal digits for a display on a mobile,
+where file transfer speed may make reducing file size important.
+
+# Excessive data points.
+When plotting functions, it is sensible to avoid using more data points
+than are justified by the resolution. Again 1 in 1000 is a typical number,
+and by using bezier curve fitting, as few as 100 points should be sufficient
+to produce a visibly perfectly smooth curve for 'well-behaved' functions.
+
+Plotting extremely large datasets from files may cause memory overflow,
+as with any STL container held in memory.
+It may be necessary to perform some averaging or smoothing,
+or just using a 'stride' to select, for example, every 100th value
+to be plotted.
+
+# Redundant style specifications.
+
+The use of the g or group element has been used to try to reduce
+repeated (and thus redundant) style specifications.
+More efficient use of groups may be possible.
+
+# Not using default style and attributes where possible.
+
+Some effort has been made to use defaults, but more may be possible.
+
+[h4 Adding document information to the svg Image files]
+
+Several ways of adding useful information to the svg document are provided.
+If the strings are null (the default) nothing is output.
+
+Member function svg& description(const std::string) allows output like:
+
+ <desc>My Document description</desc>
+
+ svg& document_title(const std::string)
+
+ <title>My Document title</title>
+
+(Note that this is *not* the same as the title of the plot.)
+
+
+[h4 Adding Copyright and License conditions for the SVG Image files]
+
+In general, setting values for items like copyright_holder will ensure that
+they appear in the SVG document both as XML and as XML comment.
+If none are set, nothing will be output, to minimize file size.
+
+[@http://www.w3.org/TR/2004/WD-SVG12-20041027/nonvisual.html www.w3.org/TR/2004/WD-SVG12-20041027]
+discusses primary documents, of type .svg in section 17.3
+Adding Copyright information to an SVG document:
+SVG encourages the use of a common metadata format for inclusion of copyright information.
+Metadata relevant to the data copyright of the entire document
+should be added to metadata element of the topmost svg element.
+This allows the author to unambiguously state the licensing terms for the entire document.
+The scheme may also be used elsewhere in the document,
+for pieces that have different licensing. For example,
+an SVG font may have specific licensing details expressed in its own metadata element.
+
+Note that inclusion of this metadata does not provide the author with a method
+in which to protect or enforce their copyright,
+it simply bundles the copyright information with the content in a defined manner.
+Providing methods, technical or non-technical, for data protection
+is currently beyond the scope of the SVG specification.
+
+This does not exclude the use of other metadata schemes.
+
+A simple way of adding metadata for copyright is provided by functions to set
+
+ copyright_holder(std::string);
+ copyright_date(std::string);
+
+(as well as description and document_title, and .svg filename if any).
+
+For example, setting these will incorporate an XML comment
+
+ <!-- SVG Plot Copyright Paul A. Bristow 2007 -->
+
+and also as meta data:
+
+ <meta name="copyright" content="Paul A. Bristow" />
+ <meta name="date" content="2007" />
+
+The Creative Commons Metadata Set is also provided as an option in this implementation,
+following [@http://www.ibm.com/developerworks/xml/library/x-think18.html this example.]
+
+The [@http://creativecommons.org/about/licenses Creative Commons License] is one method
+of providing license terms in a machine-readable format.
+
+Typical data added to the file would be XML like this:
+
+ <metadata>
+ <rdf:RDF xmlns:cc="http://web.resource.org/cc/"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
+ <cc:work rdf:about="filename.svg">
+ <!-- insert filename or title here -->
+ <dc:title>Plot title</dc:title>
+ <dc:creator>Boost.Plot</dc:creator>
+ <dc:author>Paul A. Bristow</dc:author>
+ <dc:format>application/xhtml+xml+svg</dc:format>
+ <cc:license rdf:about="http://creativecommons.org/licenses/by-sa/.0/">
+ <cc:requires rdf:resource="http://web.resource.org/cc/Notice"/>
+ <cc:permits rdf:resource="http://web.resource.org/cc/Reproduction"/>
+ <cc:permits rdf:resource="http://web.resource.org/cc/Distribution"/>
+ <cc:requires rdf:resource="http://web.resource.org/cc/Attribution"/>
+ <cc:permits rdf:resource="http://web.resource.org/cc/CommercialUse"/>
+ </cc:license>
+ </cc:work>
+ </rdf:RDF>
+ </metadata>
+
+cc:permits can also be cc:requires or cc:prohibits, as required.
+
+A license that permits reproduction, distribution and commercial use,
+but requires both notice & attribution
+is probably most suitable for Boost documents as is therefore chosen as the default.
+
+This license can be included by calling svg member function `is_license(true)`.
+If this license will be included can be discovered by calling svg member function `is_license()`.
+
+Similarly functions
+ const std::string license_reproduction();`
+ const std::string license_distribution();
+ const std::string license_attribution();
+ const std::string license_commercialuse()
+allow you to find the current license requirements.
+
+[@http://web.resource.org/rss/1.0/modules/cc/ RDF] is the metadata format chosen by
+[@http://creativecommons.org Creative Commons].
+
+and references the resource (cc) at
+[@http://web.resource.org/cc/] using the definition of its XML namespace:
+
+ rdf:RDF xmlns:cc="http://web.resource.org/cc/"
+
+Options are [@http://web.resource.org/rss/1.0/modules/cc/ summarized].
+
+A way of seting the author is also provided, in case the copyright has been assigned to someone else,
+for example a publisher. svg set and get member functions:
+
+ author(const std::string);
+ const std::string author();
+
+[h4 Using Unicode Symbols (usually Math Sumbols and Greek letters)]
+
+Unicode symbols that work on most browsers in html are listed at:
+
+[@boost\math_toolkit\libs\math\doc\sf_and_dist\html4_symbols.qbk html4_symbols],
+[@http://www.htmlhelp.com/reference/html40/entities/symbols.html reference/html40/entities/symbols],
+and [@http://www.alanwood.net/demos/ent4_frame.html demos].
+
+However support for Unicode in SVG is much less fully implemented and displayed results are variable.
+
+The Unicode value in decimal 9830 or hex x2666 must be prefixed with `& `and terminated with `;`
+for example, `&x2666`; for xml
+and then enveloped with "" to convert to a const std::string, for example: "&#x2666;" for diamond.
+
+Thus diamond can be used a point marker.
+
+Similarly for greek in title, legend and axes:
+
+ .legend_title("My Legend &#956;") // generates <em>&#956;</em> greek mu
+
+
+[h4 Subscript and superscript in title, legend and labels]
+
+It is very common need to show superscript, in units for example, area (m[super 2]),
+and subscript for a[sub 0, a[sub 2]...
+
+Sadly, although these needs are both OK with html,
+showing sub and superscripts in svg doesn't work well as yet
+because browsers don't handle <sub> or <sup>, nor baseline-shift.
+
+The only reasonably widely supported feature is
+Unicode symbols for superscript 1, 2 and 3 (only).
+For example, Latin1_symbols: sup1 &185; sup2 &178; sup3 &179; work on Firefox & IE6/7.
+
+But&#2071; &#2075; &#2090; - show just square boxes.
+
+The SVG specification covers <sub, <super>, and the general baseline-shift,
+but these are just not implemented yet.
+
+[@http://unicode.org/reports/tr25/#_Toc28 2.8 Superscripts and Subscripts]
+[@http://www.unicode.org/charts/symbols.html symbols]
+
+At Nov 2007, the following commands don't have very useful coverage.
+<tspan baseline-shift = \"50%\" font-stretch = \"wider\" font-variant = \"small-caps\" > 3 </tspan>
+baseline-shift = \"50%\" & super and subscript down't work on Firefox 2.
+but DO on IE6 (and probably 7)
+font-stretch = \"wider\" No effect Firefox or IE6.
+font-variant = \"small-caps\" No effect Firefox or IE6.
+<tspan baseline-shift = \"50%\" >3/4 </tspan>
+
+This has been reported as a bug to Mozilla,
+and is regarded a duplicate of other reports on sub and super
+https://bugzilla.mozilla.org/show_bug.cgi?id=401102
+
+but baseline-shift has no effect on Firefox 2. See
+http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=7410&view=previous
+
+The use of <tspan to shift characters *is* feasible, as shown
+[@http://www.w3.org/TR/SVG/images/text/tspan02.svg in this example],
+which displays correctly in all browsers,
+
+and it is also possible to use
+
+ <svg:g transform="translate(5.062500, -5.367188)">
+
+to shift the next letter up, but these parameters are font-size related,*
+and the svg most verbose.
+
+None of these method provides a *convenient* method of creating the right string
+for titles, legends, or axis labels, but it may be possible to devise code that does.
+
+[h4 Coding style]
+
+In general [@http://www.boost.org/libs/spirit/doc/style_guide.html Boost coding style guide]
+and [@http://groups.yahoo.com/group/boost/files/coding_guidelines.html Boost coding guidelines]
+has been used.
+
+But some work is needed to rename arguments named with lading underscores in violation of
+guidance 2.14:
+
+Names containing double underscores (``__'') or beginning with single underscores (``_'')
+are entirely forbidden. These are reserved to the C++ implementation in various contexts.
+
+and also
+
+2.10. Data members should have a ``m_'' prefix, to distinguish them
+from an otherwise-identical member function name
+and to clarify their provenance in code which uses them.
+Non-member names must not have an ``m_'' prefix.
+
+Some data members end with _ to avoid name clashes, another widely used convention.
+
+[endsect] [/section:implementation Implementation & Rationale]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/stylesheet_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/stylesheet_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,22 @@
+[section:tutorial_stylesheet Stylesheet Tutorial]
+
+To include a stylesheet into a program with any plot, simply use the `load_stylesheet(const std::string& filename)` method to load an external stylesheet. To load the file ./style.css, for instance, we would call:
+
+ my_plot.load_stylesheet("./style.css");
+
+There are a few instances when a `std::runtime_error` exception may be thrown.
+
+* If the filename is incorrect.
+* If the file does not pass the parsing phase.
+
+[h4 Using the stylesheet]
+Here is the output file for the simple 1D example, as used before:
+
+[$images/1d_simple.png]
+
+Here it is with a simple stylesheet applied (from $PROJECT_ROOT/libs/svg_plot/example/style.css):
+
+[caution When the user will have the option to convert the graph to another image format, the stylesheets will be ignored. These would provide the user with an even more complex function object that they would need to implement. If you provide a stylesheet, make sure you know what will not be converted. (Currently, that is everything in the stylesheets.)]
+[$images/1d_simple_style.png]
+
+[endsect] [/section:tutorial_stylesheet Stylesheet Tutorial]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_interface.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_interface.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,103 @@
+[section:svg_interface `svg` Public Interface]
+[table class `svg` Standard C++ Methods
+ [[Signature] [Description] [Notes & Examples]]
+
+ [[`svg()`] [Constructor] [Default image size (pixels) is (400, 400).]]
+
+ [[`svg()`] [Constructor] [Default image size (pixels) is (400, 400).]]
+]
+
+[table `svg` shapes
+ [[Signature] [Description] [Notes & Examples]]
+ [[`svg& line(double x1, double y1, double x2, double y2)`] [Adds a line from (x1,y1) to (x2,y2) in the root level of the document.][]]
+
+ [[`path_element& path()`]
+ [Pushes a `path_element` to the back of the tree and returns a reference to it.
+ This allows chaining, for example:
+``
+path_element& my_path = image.path();
+
+my_path.M(3, 3).l(150, 150);
+``
+]]
+
+ [[`get_g_element`] [Class derived from svg_element.] [Graph element: line, circle, rect... Node element of document tree.]]
+
+ [[`g_element& add_g_element()`] [Adds a g_element at the root of the document tree. Acts as a `push_back()`] [Returns the `g_element` that is pushed back. This allows you to do something like the following: `image.add_g_element().line(/**/).line(/**/).rect(/**/); `
+ which adds two lines and a rectangle to the g_element that was just created.]]
+
+ [[`svg& circle(double x, double y, unsigned int radius = 5)`] [Adds a point at (x,y) in the root level of the document][If the user is calling the circle method, odds are they would prefer a real circle instead of a degenerate circle (a point). 5 is as good a default as any other, and the user is unlikely want a point if they are making this call.]]
+
+ [[`g_element& get_g_element(int)`] [Gets the g_element at the index specified.] [Gives a runtime error if you specify an index that does not contain a `g_element`. An iterator interface to access these elements might be useful.]]
+
+ [[`svg& rect(double x1, double y1,
+ double width, double height)`] [Adds a rectangle at point (x1, y1) that has `width` wide and `height` high.][]]
+
+ [[`svg& text(double x, double y, std::string text)`] [Adds string `text` at (x,y) in the root level of the document][]]
+
+][/SVG C++ default methods table]
+
+[table `svg` Copyright
+ [[Signature] [Description] [Notes & Examples]]
+
+ [[`svg& copyright_holder(const std::string)`] [Set copyright holder for the SVG XML document, as comment and XML.][<!-- SVG Plot Copyright Paul A. Bristow 2007 -->
+<meta name="copyright" content="Paul A. Bristow" />]]
+
+ [[`svg& license(const std::string, const std::string, const std::string, const std::string)`][Set license terms (if any): reproduction, distribution, attribution, commercialuse]["permits" (default), "requires", or "prohibits".]]
+
+ [[`const std::string& reproduction()`] [Returns the Reproduction segment of the license] [The default is `""`]]
+
+ [[`const std::string& distribution()`] [Returns the Distribution segment of the license] [The default is `""`]]
+
+ [[`const std::string& attribution()`] [Returns the Attribution segment of the license] [The default is `""`]]
+
+ [[`const std::string& commercialuse()`] [Returns the Commercial Use segment of the license] [The default is `""`]]
+
+ [[`const std::string& copyright_holder`] [Returns the copyright holder for the SVG XML document] [Returns the input value for copyright holder. Does not return any XML]]
+
+ [[`svg& license(bool)`] [Sets whether or not the license information should be added to the written document] [`false`]]
+
+ [[`bool is_license()`][Returns whether or not a license will be output with a written document.][Permits reproduction & distribution but requires atribution.]]
+
+ [[`svg& author(const std::string)`] [Sets the author of the document] [The copyright_holder is the default author]]
+
+ [[`svg& copyright_date(const std::string)`] [Set copyright date for the SVG XML document, as comment and XML.][<!-- SVG Plot Copyright Paul A. Bristow 2007 -->
+<meta name="date" content="2007" />]]
+
+ [[`const std::string& copyright_date()`] [Returns the copyright date for the SVG XML document] [Returns the date string, not the associated XML.]]
+
+ [[`svg& description(const std::string)`] [Sets description for the SVG XML document, as comment and XML.][<!-- My Document description --> <desc>My Document description</desc>]]
+
+ [[`const std::string& description()`] [Returns the description of the document.] [Returns the description string, not the associated XML]]
+
+ [[`const std::string& author()`] [Returns the author of the document.] [The default is the copyright_holder.]]
+
+][/Copyright table]
+
+[table `svg` document settings and writing
+ [[Signature] [Description] [Notes & Examples]]
+
+ [[`svg& coord_precision(int)`] [Sets the precision output for coordinates (decimal digits)][default 3, but for mobiles, 2 might suffice.]]
+
+ [[`svg& document_title(const std::string)`] [Sets title for the SVG XML document (not the plot)][<title>My Document title</title>]]
+
+ [[`int document_size()`] [Returns the number of elements in the root of the document] [] ]
+
+ [[`int coord_precision(int)`] [Returns the current precision of doubles in the document] [The default is 3]]
+
+ [[`svg& x_size(unsigned int)`] [Sets the width of the image (pixels).] []]
+
+ [[`svg& y_size(unsigned int)`] [Sets the height of the image (pixels).] []]
+
+ [[`unsigned int x_size()`] [Returns the width of the image (pixels).] []]
+
+ [[`unsigned int y_size()`] [Returns the height of the image (pixels).] []]
+
+ [[`svg& image_size(unsigned int, unsigned int)`] [Sets the size of the image produced,
+ (pixels).][]]
+
+ [[`svg& write(const std::string&)`] [Writes the document to the file represented by the argument.][Opens the file stream itself and tries to call `write(std::ostream&)`. Throws `std::runtime_exception` if it can not open the file.]]
+
+ [[`svg& write(std::ostream&)`] [Writes the document to the stream represented by the argument.][]]
+]
+[endsect] [/section:svg_interface]

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.qbk
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.qbk (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -12,1778 +12,29 @@
 
 [/ Editorial work by Paul A. Bristow 16 Oct 2007]
 
-[section:howtouse How To Use This Documentation]
+[include how_to_use.qbk]
 
-* Tutorial pages are intended for those who do not know how to use the program.
- * The pages that begin with the tag "Tutorial: Simple" are for absolute
- beginners.
- * "Tutorial: Full" should give the intermediate user a good
- reference, as well as show how the program can be used
- * "Tutorial: Special" shows other features/options that the headers
- provide to the user.
-* The pages labelled "*Public Interface*" give reference information for
-their respective subjects. You can find all public methods (and data members,
-when structs are concerned) in these sections.
-* If you have a feature request, or if it appears that my implementation
-is in error, please check the [@svg_plot/todo.html To Do] page first, as well
-as the respective rationale section, if it exists. If I
-you do not find your idea/complaint, please reach me either through the Boost
-development list, or email me at jakevoytko (at) gmail (dot) com
+[include to_do.qbk]
 
-[heading Admonishments]
+[include colors.qbk]
 
-[note These blocks typically go into more detail about an explanation given
-above.]
-[tip These blocks contain information that you may find helpful while coding.]
-[important These contain information that is imperative to understanding a
-concept.
-Failure to follow suggestions in these blocks will probably result in undesired behavior.
-Read all of these you find.]
-[warning It is imperative that you follow these. Failure to do so will lead to
-incorrect, and likely undesired, results in the plot.]
+[include svg_tutorial.qbk]
 
-And the first admonishment I will use is as follows:
+[include 1d_tutorial.qbk]
 
-[important This is not (yet) a Boost library. It is a
-[@http://code.google.com/soc/2007/boost/about.html GSoC project]
-whose mentor organization is Boost.]
+[include 2d_tutorial.qbk]
 
-[heading Preface]
-Humans have a fantastic capacity for visual understanding, and merely looking
-at data organized in one, two, or three dimensions allows us to see relations
-not otherwise visible in a list of numbers. Computers, however, deal with
-information numerically, and C++ and the
-[@http://en.wikipedia.org/wiki/Standard_Template_Library Standard Template Library (STL)]
-do not currently offer a way to bridge the gap.
-This library helps the user to easily plot data stored in STL containers.
+[include boxplot_tutorial.qbk]
 
-This project is focused on using STL containers in order to graph data on a
-one-dimensional and two-dimensional (and in future, perhaps, 3D) plot. The plot
-will currently be written to a
-[@http://en.wikipedia.org/wiki/Scalable_Vector_Graphics Scalable Vector Graphic image].
+[include stylesheet_tutorial.qbk]
 
-[@http://www.w3.org/TR/SVG11/ Scalable Vector Graphics (SVG)] is an
-[@http://www.w3.org/TR/REC-xml/#sec-comments XML specification]
-and file format for describing two-dimensional vector graphics.
+[include behavior_tutorial.qbk]
 
-SVG files (.svg) can be viewed with a browser like Mozilla Firefox (newer version),
-[@http://www.adobe.com/products/acrobat/readstep2.htmlAdobe Acrobat Reader],
-many other graphics program, and by Microsoft Internet Explorer,
-provided a suitable
-[@http://www.adobe.com/svg/ Adobe SVG Veiwer plug-in for SVG files] is installed.
+[include plot_defaults.qbk]
 
-The goals of the project are:
+[include interface.qbk]
 
-* To let users produce simple plots with minimal intervention by using sane
-defaults.
-* To allow users to easily customize plots.
-* To allow the user to talk to the plot classes using coordinate units
-rather than pixels or other arbitrary measures.
-* To create the backbone of a `svg` class that can be extended to fully support
-the standard.
-* compliance with the
-[@http://www.w3.org/TR/SVG11/ W3C Scalable vector Graph standard].
+[include rationale.qbk]
 
-[note Comments and suggestions to Jake Voytko
-at jakevoytko (at) gmail (dot) com]
+[include acknowledgements.qbk]
 
-[endsect] [/section:howtouse How To Use This Documentation]
-
-[section:todo To Do List]
-This project is still in development, so here is a list of things that I would
-still like to do by the end of the project. I recommend you check here first
-before you email me with requests.
-
-* Allow an *external stylesheet* to be loaded to style the graph. External
-stylesheets will allow a standard and easy way to style the document
-so that users don't have to come up with their own home-grown solutions.
-* Allow *function pointers* to specify functions as input. A typical use case
-is to just see what a function like [^sin(x)] looks like.
-* *Radian coordinate system*.
-* Implementation of *SVG's DOM*. This will make the SVG class useful for other things than solely making graphs!
-* *Automatic scaling* of the axis.
-* Allow *2D plots of 1D containers*.
-Currently I am having trouble with having functors that update state interact with `make_transform_iterator`, and have omitted the feature.
-* Allow *other image formats*. This is certainly an after-GSoC project, as
-there are many inherent difficulties with this part. The solution that I am
-currently playing with is allowing the user to pass a functor that traverses
-the document tree. Generalizing images to an `image` class is fraught with
-difficulties, as SVG is a tree-based format, which it does not share with
-many other formats. When I come up with what I feel is a minimal-intervention
-method of doing this, I will begin a discussion on the Boost dev list.
-* *Avoid redrawing the entire plot each time*. This is the easiest way to
-write the program initially, but it would be more efficient if the program could
-keep track of what has been changed and what hasn't, so that it may be more
-efficient if lots of images are being produced.
-* Allow the user to provide a function object for generating *custom axis labels*,
-for example, label axes with names of months (Jan, Feb, Mar...)
-instead of integer representations of months (1, 2, 3...).
-* *Logarithmic Axes*.
-* *Histograms*.
-
-[endsect] [/section:todo To Do]
-
-[section:color Colors]
-
-The project supports any
-[@http://en.wikipedia.org/wiki/RGB_color_model RGB color],
-as well as a number of colors that are
-[@http://www.w3.org/TR/SVG/types.html#ColorKeywords named by the SVG standard].
-
-[heading `svg_color_constant`]
-`svg_color_constant` is simply an enumerated list.
-
-The constants are defined at
-[@../../../../boost/svg_plot/svg_color.hpp svg_color.hpp].
-
-Examples of colors are at [@../../../svg_plot/example/svg_colors.cpp svg_colors.cpp].
-
-The
-[@http://www.w3.org/TR/SVG/types.html#ColorKeywords colors are defined by the SVG standard here].
-The list contains all of your expected colors, such as magenta, pink and red, and many other shades.
-
-The list also contains one extra color element, `blank`, defined as `false`,
-used when you need to pass a color, but would not like it to be visible.
-This comes in handy for defining defaults for functions, for example.
-
-[h4 Example of using `svg_color_constant`]
-
- using namespace boost::svg;
-
- svg_2d_plot my_plot;
-
- svg_color_constant my_const = red;
-
- my_plot.background_border_color(my_const);
- my_plot.background_color(lightgray);
-
-[note `svg_color` has a constructor for `svg_color_constant`, so you can use
-a `svg_color_constant` in place of a `svg_color` and it will be implicitly
-converted. However, there is *not* currently an
-`svg_color::operator=(svg_color_constant)` overload, so
-``
-svg_color my_color = red;
-``
-does not have the desired effect, and nor does
-`cout << red << endl;`
-output the expected RGB(255,0,0) but instead 119 the value of the enum!]
-
-[h4 `svg_color` interface]
-
-You can define a `svg_color` using two different constructors:
-
- // The parameters are red, green, and blue respectively.
- svg_color(int, int, int);
-
- // Use a pre-existing color constant.
- svg_color(svg_color_constant);
-
-[important Any integer value is accepted but negative values are contrained 0, and positive values > 255 are constrained to 255.]
-
-[h4 Example of using `svg_color`]
-
- using namespace boost::svg;
-
- svg_color my_white(255, 255, 255); // RGB constructor.
- svg_color const_white(white); // SVG defined named constructor.
-
- BOOST_ASSERT(my_white == const_white);
-
-
-[note `svg_color`'s constructor takes in three integer values.
-The [@http://www.w3.org/TR/SVG11/types.html SVG 1.1 standard]
-allows any integer to represent an RGB value, with values less than 0
-and greater than 255 being constrained to their respective min and max.]
-
-[heading Colors Internals and Rationale]
-
-Constants are defined in an enum, `svg_color_constant`, in alphabetical order.
-[@..\..\..\..\boost\svg_plot\svg_color.hpp color constants].
-This facilitates quick lookup of their RGB values from an array. Anywhere
-that a `svg_color` can be used, a `svg_color_constant` can be used, as the
-conversion is implicit.
-
-All color information is stored in RGB format as three 'unsigned char' in a `svg_color` struct.
-The rationale for storing information in RGB format is because it is precise,
-and is always representable the exact same way.
-Storing a floating-point percent or fraction
-would introduce the possibility of undesirable rounding error.
-
-[endsect] [/section:color Color]
-
-[section:tutorial_code_1d_simple Tutorial: 1D]
-[section:tutorial_code_1d_example Simple 1D Example]
- #include <boost/svg_plot/svg_1d_plot.hpp>
- using namespace boost::svg;
- #include <vector>
- using std::vector;
-
- int main()
- {
- // STL containers for the data to plot.
- vector<double> dan_times;
- vector<double> elaine_times;
- // Fill the two containers with some data:
- dan_times.push_back(3.1);
- dan_times.push_back(4.2);
- elaine_times.push_back(2.1);
- elaine_times.push_back(7.8);
-
- svg_1d_plot my_plot; // Construct a plot.
-
- my_plot.title("Race Times") // Set title and legend.
- .legend_on(true)
- .x_range(-1, 11);
-
- // Add the containers of data to the plot.
- my_plot.plot(dan_times, "Dan", blue);
- my_plot.plot(elaine_times, "Elaine", orange);
-
- // And finally write the plot to a file.
- my_plot.write("simple.svg");
- return 0;
- }
-
-[$images/1d_simple.png] [/ TODO All .png should be .svg?]
-
-[h4 A Note On Syntax]
-The syntax "`my_plot.title("Hello").legend_on(true)...`" may appear unfamiliar.
-However, it works on the same 'chaining' principle that the assignment operator, addition
-operator, and output operator in the following code works:
-
- a = b = c = d = 3;
-
- std::cout << a + b + c + d << std::endl; // prints 12
-
-Within all of the plot classes, 'chaining' works the same way.
-Equivalent tradional code for the example is as follows:
-
- my_plot.title("Race Times");
- my_plot.legend_on(true);
- my_plot.x_range(-1, 11);
-
-Chaining allows you to avoid repeatedly typing `myplot.`
-and to easily group related settings like plot window, axes, ... together,
-and avoids relying on the order of arguments in ordinary function calls.
-Order would clearly become impracticable with dozens of arguments required
-to set all the myriad plot options.
-
-In the long run, I think you will find that chaining helps organize your code
-to read more clearly!
-
-[h4 Simple 1D Example Breakdown]
-Let's examine what this does in detail.
-
- svg_1d_plot my_plot;
-
-This constructor initializes a new 1D plot, called my_plot, and also sets all the many default values.
-
- my_plot.title("Race Times")
- .legend_on(true)
- .x_range(-1, 11);
-
-All of the setter methods (or member functions) are fairly self-explanatory. To walk through it once,
-
-* the title, which will appear at the top of the graph, will say "Race Times".
-* `legend_on(true)` means that the legend will display.
-* `x_range(-1, 11)` means that the axis displayed will be between -1 and 11,
-as you can see in the above image.
-
- my_plot.plot(my_data, "Race times");
-
-This draws `my_data` onto `my_plot`. As many containers as you want can be drawn
-to `my_plot`. The name of this data series is "Race times", and this text will show up
-in the legend (if my_plot.legend_on() == true). These are the two required parameters for this plot function call.
-There are also optional parameters, as seen in the section
-[@.\html\svg_plot\interface\svg_1d_plot_interface.html svg_1d_plot_interface.html]
-
-``
-my_plot.write("simple.svg");
-``
-This writes our plot to the file "simple.svg". SVG files can be viewed with most browsers,
-or embedded into documents.
-
-[endsect] [/section:tutorial_code_1d_simple 1D Simple Program]
-
-[section:full_1d_layout Tutorial: 1D Full Layout Example]
-
- #include <boost/svg_plot/svg_1d_plot.hpp>
- using namespace boost::svg;
- #include <cmath> // for sqrt
-
- #include <vector>
- #include <deque>
- #include <boost/array.hpp>
-
- // Three different STL-style containers:
- using std::vector;
- using std::deque;
- using boost::array;
-
- // Three sample functions:
- double f(double x)
- {
- return sqrt(x);
- }
-
- double g(double x)
- {
- return -2 + x*x;
- }
-
- double h(double x)
- {
- return -1 + 2*x;
- }
-
- int main()
- {
- vector<double> data1;
- deque<double> data2;
- boost::array<double, 10> data3;
- // Fill the containers with some data using the functions:
- int j=0;
- for(double i=0; i<9.5; i+=1.)
- {
- data1.push_back(f(i));
- data2.push_front(g(i));
- data3[j++] = h(i);
- }
-
- svg_1d_plot my_plot; // Construct my_plot.
-
- // Set many plot options,
- // using chaining to group similar aspects together.
- // Size/scale settings.
- my_plot.image_size(500, 350)
- .x_range(-3, 10);
-
- // Text settings.
- my_plot.title("Oh My!")
- .title_font_size(29)
- .x_label("Time in Months");
-
- // Commands.
- my_plot.legend_on(true)
- .plot_window_on(true)
- .x_label_on(true)
- .x_major_labels_on(true);
-
- // Color settings.
- my_plot.background_color(svg_color(67, 111, 69))
- .legend_background_color(svg_color(207, 202,167))
- .legend_border_color(svg_color(102, 102, 84))
- .plot_background_color(svg_color(136, 188, 126))
- .title_color(white);
-
- // Axis settings.
- my_plot.x_major_interval(2)
- .x_major_tick_length(14)
- .x_major_tick_width(1)
- .x_minor_tick_length(7)
- .x_minor_tick_width(1)
- .x_num_minor_ticks(3);
-
- // Legend settings.
- my_plot.legend_title_font_size(15);
-
- // Put the three containers of data onto the plot.
- my_plot.plot(data1, "Lions", blue);
- my_plot.plot(data2, "Tigers", orange);
- my_plot.plot(data3, "Bears", red);
-
- my_plot.write("1d_complex.svg");
-
- return 0;
- }
-
-
-This produces the following output:
-
-[$images/1d_complex.png]
-
-A little bit of color customization goes a very long way!
-
-[endsect] [/section:tutorial_1d_example_code]
-
-[section:1d_special Tutorial: 1D Special Features]
-
-[heading X-Axis Grid Lines]
-
-If you would like vertical grid lines that go on the graph,
-you can make the following call to `svg_1d_plot`:
-
- my_plot.x_major_grid_on(true)
- .x_minor_grid_on(true);
-
-To color style it, you might add the following calls:
-
- my_plot.x_major_grid_color(lightgray) // Darker color for major grid.
- .x_minor_grid_color(whitesmoke); // Lighter color for minor grid.
-
-This will produce the following image:
-
-[$images/1d_x_grid.png]
-
-[h4 X-Axis External Style]
-
-TODO this has ben changed to x_up_ticks and x_down_ticks and y_left_ticks and y_right_ticks.
-
-By default the 'ticks' face into the plot area.
-Alternatively, you can use an 'external' style,
-so that the ticks face out from the X- and/or Y-axes.
-
- my_plot.x_external_style_on(true);
- my_plot.y_external_style_on(true);
-
-The axis is still otherwise styled using the normal methods.
-The following is an example of the style that you can produce with this:
-
-[$images/1d_x_external.png]
-
-[important If the axis is turned off, `x_external_style_on(true)` will not
-turn the axis back on. To do that, you must call `axis_on(true)`]
-
-[endsect] [/1d_special Tutorial: 1D Special Features]
-[endsect] [/1d_tutorial]
-
-[section:tutorial_2d_code_simple Tutorial: 2D]
-[section:2d_simple_code_example Simple Code Example]
-
- #include <boost/svg_plot/svg_2d_plot.hpp>
- using namespace boost::svg;
-
- #include <map>
- using std::multimap; // A more complicated STL container.
-
- int main()
- {
- multimap<double, double> map1;
- multimap<double, double> map2;
-
- // This is random data used purely for example purposes.
- map1[1.] = 3.2;
- map1[1.] = 5.4;
- map1[7.3] = 9.1;
-
- map2[3.1] = 6.1;
- map2[5.4] = 7.;
-
- svg_1d_plot my_plot;
-
- my_plot.title("Race Times")
- .legend_on(true)
- .x_range(-1, 11)
- .background_border_color(black);
-
- my_plot.plot(map1, "Series 1", blue); // Data point marker color is blue.
- my_plot.plot(map2, "Series 2", orange);
-
- my_plot.write("simple_2d.svg");
- return 0;
- }
-
-[h4 Resulting Simple_2D Example Image]
-
-[$images/2d_simple.png]
-
-[h4 Simple_2D Example Breakdown]
-
-Let's examine what this does.
-
- svg_2d_plot my_plot;
-
-This constructor initializes a new 2D plot. This also sets the many default values.
-
- my_plot.title("Race Times")
- .legend_on(true)
- .x_range(-1, 11)
- .background_border_color(black);
-
-All of the setter methods are fairly self-explanatory. To walk through it once,
-
-* The title, which will appear at the top of the graph, will say "Race Times".
-* `legend_on(true)` means that the legend will show up.
-* `x_range(-1, 11)` means that the axis displayed will be between -1 and 11,
-as you can see in the above images.
-* `background_border_color(black)` sets the border around the image to `black`.
-Ordinarily it is left to be the color of the background
-(and so no border of plot area will be visible).
-
- my_plot.plot(map1, "Series 1", blue);
- my_plot.plot(map2, "Series 2", orange);
-
-This draws `map1` and `map2` to `my_plot`. As many containers as you want can
-be drawn to `my_plot`. Evntually the plot will become cluttered and confusing,
-when I recommend just creating another plot!
-
-The name of the series is `"Race times"`, and that
-text will show in the legend. These are the two required parameters for
-this function call. There are many optional parameters, as seen in the section
-[@plot_function Getting More Out of the `plot()` Function]
-
- my_plot.write("simple_2d.svg");
-
-This writes plot `my_plot` to the file "simple_2d.svg".
-
-[endsect] [/section:tutorial_code_simple Simple program]
-
-[section:full_2d_layout Tutorial: Fuller Layout Example]
-
- #include <boost/svg_plot/svg_2d_plot.hpp>
- using namespace boost::svg;
- #include <map>
- using std::multimap;
- #include <cmath> // for sqrt
-
- // Some example functions:
- double f(double x)
- {
- return sqrt(x);
- }
-
- double g(double x)
- {
- return -2 + x*x;
- }
-
- double h(double x)
- {
- return -1 + 2*x;
- }
-
- int main()
- {
- multimap<double, double> data1, data2, data3;
-
- for(double i=0; i<=10.; i+=1.)
- {
- data1[i] = f(i);
- data2[i] = g(i);
- data3[i] = h(i);
- }
-
- svg_2d_plot my_plot;
-
- // Size/scale settings.
- my_plot.image_size(700, 500)
- .x_range(-1, 10)
- .y_range(-5, 100)
-
- // Text settings.
- my_plot.title("Plot of Mathematical Functions")
- .title_font_size(29)
- .x_label("Time in Months");
-
- // Commands.
- my_plot.legend_on(true)
- .plot_window_on(true)
- .x_label_on(true)
- .x_major_labels_on(true);
-
- // Color settings.
- my_plot.background_color(svg_color(67, 111, 69))
- .legend_background_color(svg_color(207, 202,167))
- .legend_border_color(svg_color(102, 102, 84))
- .plot_background_color(svg_color(136, 188, 126))
- .title_color(white);
-
- //X axis settings.
- my_plot.x_major_interval(2)
- .x_major_tick_length(14)
- .x_major_tick_width(1)
- .x_minor_tick_length(7)
- .x_minor_tick_width(1)
- .x_num_minor_ticks(3)
-
- // Y axis settings.
- .y_major_tick(10)
- .y_num_minor_ticks(2);
-
- // Legend settings.
- my_plot.legend_title_font_size(15);
-
- my_plot.plot(data1, "Sqrt(x)", blue,
- _point_style = none,
- _show_line = true);
-
- my_plot.plot(data2, "-2 + x^2", orange,
- _show_line = true);
-
- my_plot.plot(data3, "-1 + 2x", red,
- _point_style = square);
-
- my_plot.write("2d_full.svg");
-
- return 0;
- }
-
-This produces the following output:
-
-[$images/2d_full.png]
-
-A little bit of color customization goes a *very* long way!
-
-[endsect] [/section:tutorial_2d_example_code]
-
-[section:2d_special Tutorial: 2D Special Features]
-
-[h4 Y-Axis Grid Lines]
-
-If you would like horizontal grid lines that go across the graph,
-you can make the following call to `svg_2d_plot`:
-
- my_plot.y_major_grid_on(true)
- .y_minor_grid_on(true);
-
-To style it, you could use the following calls:
-
- my_plot.y_major_grid_color(lightgray) // Darker color for major grid.
- .y_minor_grid_color(whitesmoke); // lighter color for minor grid.
-
-This will produce the following image:
-
-[$images/2d_y_grid.png]
-
-Similarly you can have horizontal and/or vertical lines:
-
- my_plot.x_major_grid_on(true)
- .x_minor_grid_on(true);
-
-and color it similarly:
-
- my_plot.y_major_grid_color(lightblue) // Darker color for major grid.
- .y_minor_grid_color(azure); // lighter color for minor grid.
-
-[heading External Y Axis Style]
-
-For an alternate way to display a regular axis, you can use an external style:
-
- my_plot.y_external_style_on(true);
-
-[important If the axis is turned off, `y_external_style_on(true)` will not
-turn the axis back on. To do that, you must call `axis_on(true)`]
-
-[heading Fill the area between the plot and the axis]
-
-When there is a call to the plot() method, define `_area_fill_color`
-
- multimap<double, double> my_data;
- svg_2d_plot my_plot;
-
- my_plot.plot(my_data, "Data", _area_fill_color(red));
-
-This produces the following image:
-
-[$images/2d_area_fill.png]
-
-[h4 Curve Interpolation]
-
-If you would like an *interpolated curve* shown over your data
-(rather than the default straight lines joining points),
-simply use the following command:
-
- my_plot.plot(data, "Series 1", _bezier_curve = "true");
-
-This produces something like the following images:
-
-[$images/2d_bezier.png]
-
-[warning The `_bezier_curve` feature still displays undesired behavior in extreme circumstances. Do not use this feature with curves that have a numeric_limit value (`-NaN`, for example), or with data that has high irregularity in X-Axis spacing (for example, a clump of points between (0, 1) on the X axis, with the next one at 100 on the X axis.)]
-
-[endsect] [/2d_special Tutorial: 2D Special Features]
-[endsect] [/2d_tutorial]
-
-[section:svg_boxplot_tutorial Tutorial: Boxplot]
-[section:svg_boxplot_tutorial_simple Simple Example]
-
- #include <boost/svg_plot/svg_2d_plot.hpp>
- using namespace boost::svg;
- #include <vector>
- using std::vector;
-
- // Functions to simulate distributions.
- double f(double x)
- {
- return 50 / x;
- }
-
- double g(double x)
- {
- return 40 + 25 * sin(x * 50);
- }
-
- int main()
- {
- std::vector<double> data1, data2;
-
- // Fill our vectors with values from the functions f(x) and g(x)
- for(double i = .1; i < 10; i+=.1)
- {
- data1.push_back(f(i));
- data2.push_back(g(i));
- }
-
- // Initialize a new box plot.
- svg_boxplot my_plot;
-
- // Color information.
- my_plot.background_border_color(black);
-
- // String information.
- my_plot.title("Boxplots of Common Functions")
- .x_label("Functions")
- .y_label("Population Size");
-
- // Axis information.
- my_plot.y_range(0, 100)
- .y_minor_tick_length(20)
- .y_major_interval(20);
-
- // Write data.
- my_plot.plot(data1, "[50 / x]");
- my_plot.plot(data2, "[40 + 25 * sin(x * 50)]");
-
- my_plot.write("boxplot_simple.svg");
- return 0;
- }
-
-[h4 Image boxplot_simple.svg]
-
-[$images/boxplot_simple.png]
-
-[h4 Basic Example Breakdown]
-Let's examine what this does.
-
-[h4 Initializing a new boxplot]
-
-This initializes a new boxplot. This also sets the many default values. 4
- svg_boxplot my_plot;
-
-[h4 Setting a color]
-This sets the border color of the entire image to black (not just the plot area).
-
- my_plot.background_border_color(black);
-
-[h4 Setting strings in the plot]
-The following code sets the title that appears at the top of the graph, the
-label that appears at the bottom to name the X-axis, and the label that appears
-to the left to name the Y-axis.
-
- my_plot.title("Boxplots of Common Functions")
- .x_label("Functions")
- .y_label("Population Size");
-
-[h3 Setting axis information]
-Axis information for the X-axis is very limited, as the coordinate system
-for the X-axis is discrete, based only on the number of box-and-whisker plots
-that appear in the same boxplot.
-
-Axis information for the Y-axis, however, is customizable much in the same way that that axis information is customizable for the 1 and 2 dimensional graphs.
- // Axis information.
- my_plot.y_range(0, 100)
- .y_minor_tick_length(20)
- .y_major_interval(20);
-
-[h4 Writing to a file]
-
-This finally writes our plot to the file "boxplot_simple.svg".
-``
-my_plot.write("boxplot_simple.svg");
-``
-[endsect] [/section:svg_boxplot_tutorial_simple]
-
-[section:svg_boxplot_tutorial_full Full Boxplot Layout]
-[/ TODO?]
-[endsect] [/section:svg_boxplot_tutorial_full Full Boxplot Layout]
-
-[endsect] [/section:tutorial]
-
-[section:tutorial_stylesheet Stylesheet Tutorial]
-
-To include a stylesheet into a program with any plot, simply use the `load_stylesheet(const std::string& filename)` method to load an external stylesheet. To load the file ./style.css, for instance, we would call:
-
- my_plot.load_stylesheet("./style.css");
-
-There are a few instances when a `std::runtime_error` exception may be thrown.
-
-* If the filename is incorrect.
-* If the file does not pass the parsing phase.
-
-[h4 Using the stylesheet]
-Here is the output file for the simple 1D example, as used before:
-
-[$images/1d_simple.png]
-
-Here it is with a simple stylesheet applied (from $PROJECT_ROOT/libs/svg_plot/example/style.css):
-
-[caution When the user will have the option to convert the graph to another image format, the stylesheets will be ignored. These would provide the user with an even more complex function object that they would need to implement. If you provide a stylesheet, make sure you know what will not be converted. (Currently, that is everything in the stylesheets.)]
-[$images/1d_simple_style.png]
-
-[endsect] [/section:tutorial_stylesheet Stylesheet Tutorial]
-
-[section:behavior Behavior]
-[section:behavior_limits Numerical Limits]
-All limits that are dealt with are double precision floating-point limits.
-Limits are detected when data is added to the plot by the call to the `plot()` method.
-
-Currently, the line interpolation algorithms do not take limits into account,
-so behavior may be incorrect for such plots as `1 / x`.
-
-Data at the limits are drawn as a circle with
-`_stroke_color = lightgray` and `_fill_color = whitesmoke`.
-This will become customizable.
-
-[h4 NaN]
-Any double precision floating-point numbers that return a nonzero value for the
-function `_isnan(double)` is considered to be a NaN value. When plotted, the
-number will appear in the user-defined coordinates as 0.
-
-[h4 Infinity]
-
-Any double precision floating point number that is equal to either of the
-following is considered to be Infinity:
-
- std::numeric_limits<double>::max()
- std::numeric_limits<double>::infinity()
-
-When plotted, these values will appear at the *top* of your plot window.
-If the plot window is not turned on,
-these points will appear at the top of the graph.
-
-[h4 Negative Infinity]
-
-Any double precision floating point number that is equal to either of the
-following is considered to be Negative Infinity:
-
- std::numeric_limits<double>::min()
- -std::numeric_limits<double>::infinity()
- std::numeric_limits<double>::denorm_min()
-
-When plotted, these values will appear at the *bottom* of your plot window.
-If the plot window is not turned on,
-these points will appear at the bottom of the graph.
-
-Here is an example of numeric limits handling in action:
-
-[$images/2d_limit.png] [\TODO this file is missing!]
-[endsect] [/section:numerical_limits]
-
-[section:behavior_stylesheets Stylesheets]
-Stylesheets currently have only a single way of being used with the program: they are parsed by the `svg` class, and if the stylesheet parses correctly, they are loaded directly into the SVG file. I recognize that it may also be desired to link to an external stylesheet, but this presents a few problems.
-
-* Both of the files now need to be transported with the produced document.
-* Any user-provided function object that is used to convert between image formats now suddenly needs to be able to load the image format from an external source.
-
-When the image converter portion of the project is completed, the image format function object will not be forced to deal with CSS. This is primarily a practical matter, and keeps simple an already difficult task. This will not preclude a method that extracts appropriate data from the CSS file and calls the appropriate functions. For example, if the user provides the following:
-
- #Background
- {
- fill : #FFF;
- stroke : #041010 ;
- }
-
-why shouldn't
-
- my_plot.background_color(black);
- my_plot.background_border_color(svg_color(4, 16, 16));
-
-be called?
-
-[caution Please note that the language that is accepted by the parser is actually stricter than the real CSS standard allows for. Following GSoC, the parser will be reimplemented to reflect the parser suggested by the CSS standard. All identifiers (class, ID, or otherwise), must be the *one and only* identifier on the line. The following is not accepted:
-``
-rect, circle
-{
- fill : #00FF00;
- stroke : #000000;
-}
-``
-
-But the following is:
-
-``
-rect
-{
- fill : #00FF00;
- stroke : #00FF00;
-}
-
-circle
-{
- fill : #00FF00;
- stroke : #00FF00;
-}
-``
-
-None of the power of CSS is compromised (I believe), but it becomes more verbose.
-] [/caution]
-
-[endsect] [/section:behavior_stylesheets]
-[endsect] [/section:behavior Behavior]
-
-[section:plot_defaults Plot Defaults]
-
-[section:1d_defaults `svg_1d_plot` Defaults]
-There are certain defaults, tabulated below, that are true at the beginning of the plotting.
-
-[table Default Values
- [[object] [Default value] [Rationale]]
- [[All colors not defined in this table] [black] [Coloring, if any, will be highly dependent on user needs.]]
- [[Axis] [On, internal style] [Most graphs include an axis of some kind. The internal axis style is used because this seems to be the default behavior in many textbooks I have owned.]]
- [[Coordinate precision] [3 decimal digits] [Sufficient 1 in 1000 precision for typical small plots. (Higher precision will increase svg file size).]]
-
- [[Distance between major X ticks] [`3 units`] [Reasonably fits into a plot window.]]
- [[Font size of the legend title] [12] [Reasonable when paired with the image size.]]
- [[Font size of the X Label] [12] [Reasonable when paired with the image size.]]
- [[Font size of the title] [30] [Makes the title stand out.]]
- [[Grid lines] [`All off`] [Grid lines are a user's personal choice, so default is none.]]
- [[Image background] [white] [Coloring, if any, will be highly dependent on user needs.]]
- [[Image size] [`500 by 350`] [Details discernable. The image is easily viewable by those using 800x600 monitors.]]
- [[Legend] [`Off`] [The goal of the defaults is to provide the cleanest possible plot as a default. Excluding the legend meets this goal.]]
- [[Legend background] [white] [Coloring, if any, will be highly dependent on user needs.]]
- [[Major tick length] [20 pixels] [Tasteful default when paired with the window size. This also makes the major ticks easily distinguishable from the minor ticks.]]
- [[Major tick width] [2 pixels] [Major ticks are more obvious than minor ticks.]]
- [[Minor tick length] [10 pixels] [Tasteful default when compared with the size of the grid. This makes the minor ticks less obvious than the major ticks.]]
- [[Minor tick width] [1 pixel] [This makes the minor tick less obvious than the major ticks.]]
- [[Number of minor X ticks between each major X tick] [2] [This allows the minor ticks to appear on the integer values.]]
- [[Plot Window] [`Off`] [Initially off because it is the simplest case.]]
- [[Plot window background] [white] [Coloring, if any, will be highly dependent on user needs.]]
- [[Title] [On, `"Plot of data"`] [The title is on because this is one of the most basic elements of a graph. The title is set to a default because when `title_on == true`, something should display.]]
- [[Title size] [`30`] [This is clearly visible in a variety of image sizes.]]
- [[X Axis Label] [`"X Axis"`, Off] ["X Axis" is the label because /something/ should display were the user to turn on the X-axis label without setting text.]]
- [[X Axis Label Size] [`12`] [This is a reasonable size at the default image size.]]
- [[X Grid (Major and Minor)] [Off] [Turned off in the interest of providing simple, clean plots.]]
- [[X Range] [`(-10, 10)`] [Traditional plot viewport (but almost all plots will need to set both X and Y ranges).]]
- ]
-
-[endsect ][/section:1d_defaults `svg_1d_plot` Defaults]
-
-[section:2d_defaults `svg_2d_plot` Defaults]
-You may have noticed that there are certain defaults that are true at the
-beginning of the plotting. Here is a table of the defaults:
-
-[table Default Values
- [[object] [Default value] [Rationale]]
- [[All colors not defined in this table] [black] [Coloring, if any, will be highly dependent on user needs.]]
- [[Axis] [On, internal style] [Most graphs include an axis of some kind. The internal axis style is used because this seems to be the default behavior in many textbooks I have owned.]]
- [[Distance between major X ticks] [`3 units`] [Reasonably fits into a plot window.]]
- [[Font size of the legend title] [12] [Reasonable when paired with the image size.]]
- [[Font size of the X Label] [12] [Reasonable when paired with the image size.]]
- [[Font size of the title] [30] [Makes the title stand out.]]
- [[Grid lines] [`All off`] [Grid lines are a user's personal choice, so default is off]]
- [[Image background] [white] [Coloring, if any, will be highly dependent on user needs.]]
- [[Image size] [`500 by 350`] [Details discernable. The image is easily viewable by those using 800x600 monitors.]]
- [[Legend] [`Off`] [The goal of the defaults is to provide the cleanest possible plot as a default. Excluding the legend meets this goal.]]
- [[Legend background] [white] [Coloring, if any, will be highly dependent on user needs.]]
- [[Major tick length] [20 pixels] [Tasteful default when paired with the window size. This also makes the major ticks easily distinguishable from the minor ticks.]]
- [[Major tick width] [2 pixels] [Major ticks are more obvious than minor ticks.]]
- [[Minor tick length] [10 pixels] [Tasteful default when compared with the size of the grid. This makes the minor ticks less obvious than the major ticks.]]
- [[Minor tick width] [1 pixel] [This makes the minor tick less obvious than the major ticks.]]
- [[Number of minor X ticks between each major X tick] [2] [This allows the minor ticks to appear on the integers.]]
- [[Plot Window] [`Off`] [Initially off because it is the simplest case.]]
- [[Plot window background] [white] [Coloring, if any, will be highly dependent on user needs.]]
- [[Title] [On, `"Plot of data"`] [The title is on because this is one of the most basic elements of a graph. The title is set to a default because when `title_on == true`,
- /something/ should display.]]
- [[Title size] [`30`] [This is clearly visible in a variety of image sizes.]]
- [[X Axis Label] [`"X Axis"`, Off] ["X Axis" is the label because /something/ should display were the user to turn on the X axis label without setting text.]]
- [[X Axis Label Size] [`12`] [This is a reasonable size at the default image size.]]
- [[X Grid (Major and Minor)] [Off] [Turned off in the interest of providing simple, clean plots.]]
- [[X Range] [`(-10, 10)`] [Traditional plot viewport.]]
- [[Y Axis Label] [`"Y Axis"`, Off] ["Y Axis" is the label because /something/ should display were the user to turn on the X axis label without setting text, and this is the most informative.]]
- [[Y Axis Label Size] [`12`] [This is a reasonable size at the default image size.]]
- [[Y Grid (Major and Minor)] [Off] [Turned off in the interest of providing simple, clean plots.]]
- [[Y Range] [`(-10, 10)`] [Traditional plot viewport.]]
- ]
-
-[endsect] [/section:2d_defaults `svg_2d_plot` Defaults]
-
-[endsect] [/section:defaults]
-
-[section:interface Public Interfaces]
-[section:svg_interface `svg` Public Interface]
-[table class svg
- [[Signature] [Description] [Notes & Examples]]
- [[`svg()`] [Constructor] [Default image size (pixels) is (400, 400).]]
-
- [[`svg& coord_precision(int)`] [Sets the precision output for coordinates (decimal digits)][default 3, but for mobiles, 2 might suffice.]]
- [[`svg()`] [Constructor] [Default image size (pixels) is (400, 400).]]
- [[`svg& copyright_holder(const std::string)`] [Set copyright holder for the SVG XML document, as comment and XML.][<!-- SVG Plot Copyright Paul A. Bristow 2007 -->
-<meta name="copyright" content="Paul A. Bristow" />]]
- [[`svg& copyright_date(const std::string)`] [Set copyright date for the SVG XML document, as comment and XML.][<!-- SVG Plot Copyright Paul A. Bristow 2007 -->
-<meta name="date" content="2007" />]]
- [[`svg& description(const std::string)`] [Sets description for the SVG XML document, as comment and XML.][<!-- My Document description --> <desc>My Document description</desc>]]
- [[`svg& document_title(const std::string)`] [Sets title for the SVG XML document (not the plot)][<title>My Document title</title>]]
- [[`svg& license(const std::string, const std::string, const std::string, const std::string)`][Set license terms (if any): reproduction, distribution, attribution, commercialuse]["permits" (default), "requires", or "prohibits".]
- [[1is_license(bool)][Adds a typical permissive Boost-like license.][permits reproduction & distribution but requires atribution.]]
- [[`get_g_element`] [Class derived from svg_element.] [Graph element: line, circle, rect... Node element of document tree.]]
- [[`g_element& add_g_element()`] [Adds a g_element at the root of the document tree. Acts as a `push_back()`] [Returns the `g_element` that is pushed back. This allows you to do something like the following: `image.add_g_element().line(/**/).line(/**/).rect(/**/); `
- which adds two lines and a rectangle to the g_element that was just created.]]
- [[`svg& circle(double x, double y, unsigned int radius = 5)`] [Adds a point at (x,y) in the root level of the document][If the user is calling the circle method, odds are they would prefer a real circle instead of a degenerate circle (a point). 5 is as good a default as any other, and the user is unlikely want a point if they are making this call.]]
- [[`g_element& get_g_element(int)`] [Gets the g_element at the index specified.] [Gives a runtime error if you specify an index that does not contain a `g_element`. An iterator interface to access these elements might be useful.]]
- [[`svg& x_size(unsigned int)`] [Sets the width of the image (pixels).] []]
- [[`svg& y_size(unsigned int)`] [Sets the height of the image (pixels).] []]
- [[`unsigned int x_size()`] [Returns the width of the image (pixels).] []]
- [[`unsigned int y_size()`] [Returns the height of the image (pixels).] []]
- [[`svg& image_size(unsigned int, unsigned int)`] [Sets the size of the image produced,
- (pixels).][]]
- [[`svg& line(double x1, double y1, double x2, double y2)`] [Adds a line from (x1,y1) to (x2,y2) in the root level of the document.][]]
- [[`path_element& path()`]
- [Pushes a `path_element` to the back of the tree and returns a reference to it.
- This allows chaining, for example:
-``
-path_element& my_path = image.path();
-
-my_path.M(3, 3).l(150, 150);
-``
-]]
- [[`svg& rect(double x1, double y1,
- double width, double height)`] [Adds a rectangle at point (x1, y1) that has `width` wide and `height` high.][]]
- [[`svg& text(double x, double y, std::string text)`] [Adds string `text` at (x,y) in the root level of the document][]]
- [[`svg& write(const std::string&)`] [Writes the document to the file represented by the argument.][Opens the file stream itself and tries to call `write(std::ostream&)`. Throws `std::runtime_exception` if it can not open the file.]]
- [[`svg& write(std::ostream&)`] [Writes the document to the stream represented by the argument.][]]
-]
-[endsect] [/section:svg_interface]
-
-[section:svg_1d_plot_interface `svg_1d_plot` Public Interface]
-[table 1D_plot Miscellaneous Functions
- [[Signature] [Description]]
- [[`svg_1d_plot()`] [See the defaults section for further details]]
- [[`svg_1d_plot& image_size(unsigned int, unsigned int)`] [Sets the size of the image produced (pixels)]]
- [[`svg_1d_plot& coord_precision(int)`] [Sets the precision output for coordinates (decimal digits, default 3).]]
- [[`svg_1d_plot& document_title(std::string)`] [Sets title for the SVG XML document (not the plot). <title>My Document title</title>]]
- [[`svg_1d_plot& description(std::string)`] [Sets description for the SVG XML document, as comment and XML, for example: <!-- My Document description -->
-<desc>My Document description</desc>]]
-
- [[`svg_1d_plot& legend_title_font_size(unsigned int)`] [Sets the font size for the legend title.]]
- [[`svg_1d_plot& title(const std::string&)`] [Sets the string to be used for the title.]]
- [[`svg_1d_plot& title_font_size(unsigned int)`] [Sets the font size for the title.]]
- [[`svg_1d_plot& write(const std::string&)`] [Writes the plot to the file passed as a parameter.]]
- [[`svg_1d_plot& write(ostream&)`] [Writes the plot to a stream passed as a parameter.]]]
-
-[table 1D_plot Commands
- [[Signature] [Description]]
- [[`svg_1d_plot& axis_on(bool)`] [Sets whether the axis is on (true) or off.]]
- [[`svg_1d_plot& legend_on(bool)`] [Sets whether the legend is on (true) or off.]]
- [[`svg_1d_plot& plot_window_on(bool)`] [Sets whether the plot will be displayed in its own window, or will be "full screen" in the image.]]
- [[`svg_1d_plot& title_on(bool)`] [Determines whether or not the image title is displayed.]]
- [[`svg_1d_plot& x_axis_on(bool)`] [Determines whether or not the X-axis is displayed.]]
- [[`svg_1d_plot& x_external_style_on(bool)`] [Determines whether or not the axis is inside or outside of the plot. Defaults is `false`.]]
- [[`svg_1d_plot& x_label_on(bool)`] [Sets whether or not the X-axis label will show]]
- [[`svg_1d_plot& x_major_labels_on(bool)`] [sets whether or not the major ticks will be labelled on the X-axis]]
- [[`svg_1d_plot& x_major_grid_on(bool)`] [Determines whether or not the major grid on the X axis will be displayed.]]
- [[`svg_1d_plot& x_minor_grid_on(bool)`] [Determines whether or not the minor grid on the X axis will be displayed.]]
- [[`svg_1d_plot& y_axis_on(bool)`] [Determines whether or not the Y axis is displayed.]]]
-
-[table 1D_plot Colors
- [[Signature] [Description]]
- [[`svg_1d_plot& background_border_color(const svg_color &col)`] [Set the background border color for the legend as `col`, an RGB color.]]
- [[`svg_1d_plot& background_color(const svg_color &col)`] [Set the background color for the whole image.]]
- [[`svg_1d_plot& legend_background_color(const svg_color &col)`] [Set the background color for the legend as `col`, an RGB color.]]
- [[`svg_1d_plot& legend_border_color(const svg_color &col)`] [Set the border color for the legend as `col`, an RGB color.]]
- [[`svg_1d_plot& plot_background_color(const svg_color &col)`] [Set the color of the plot area. Note: this only goes into effect if plot_area(true) has been called.]]
- [[`svg_1d_plot& title_color(const svg_color &col)`] [Set the title color.]]
- [[`svg_1d_plot& x_axis_color(const svg_color &col)`] [Sets the color of the lines that form the axis.]]
- [[`svg_1d_plot& x_label_color(const svg_color &col)`] [Sets the color of the labels that go along the X axis.]]
- [[`svg_1d_plot& x_major_grid_color(const svg_color &col)`] [Sets the color of the grid that runs perpindicular to the X axis.]]
- [[`svg_1d_plot& x_major_tick_color(const svg_color &col)`] [Sets the color of the major ticks of the x-axis.]]
- [[`svg_1d_plot& x_minor_grid_color(const svg_color &col)`] [Sets the color of the minor grid of the x-axis]]
- [[`svg_1d_plot& x_minor_tick_color(const svg_color &col)`] [Sets the color of the minor ticks of the x-axis.]]
- ]
-
-[table 1D_plot X-Axis Definition
- [[Signature] [Description]]
- [[`svg_1d_plot& x_axis_width(unsigned int)`] [Sets the stroke width of the x-axis.] ]
- [[`svg_1d_plot& x_label(const std::string&)`] [Sets the label of the x-axis. This does not guarantee that it will be shown. You must call `x_label_on(true)` to display.] ]
- [[`svg_1d_plot& x_major_interval(double)`] [Sets the distance (in Cartesian units) between ticks on the x-axis.] ]
- [[`svg_1d_plot& x_major_tick_length(int)`] [Sets the length (pixels) of the x-axis major ticks.] ]
- [[`svg_1d_plot& x_major_tick_width(unsigned int)`] [Sets the width (pixels) of the major ticks on the x-axis.] ]
- [[`svg_1d_plot& x_minor_tick_length(int)`] [Sets the length (pixels) of the x-axis minor tick lengths.] ]
- [[`svg_1d_plot& x_minor_tick_width(unsigned int)`] [Sets the width (pixels) of the minor ticks on the x-axis.] ]
- [[`svg_1d_plot& x_num_minor_ticks(int)`] [Sets the number of minor ticks between each major tick.] ]
- [[`svg_1d_plot& x_range(double x1, double x2)`] [Sets the scale of the x axis from x1 to x2. Throws an exception if x2<=x1. ] ]
-]
-
-[heading The 1D_plot `plot()` Method]
-The `plot()` method is defined using Boost.Parameter. As such, it supports a
-few extra named parameters, as well as a deduced parameter.
-
-[table 1D_plot Required parameter
-[[ID] [Type (* is a wildcard)] [Description]]
-[[_container] [*] [Any object that can return an iterator with begin() and end()]]
-[[_title] [`std::string`] [The name of this data series.]]]
-
-[table 1D_plot Deduced parameter
-[[ID] [Type] [Description] [Default]]
-[[_fill_color] [`svg_color`] [Color that shows *inside the circle* being drawn.] [white] ]]
-
-[table 1D_plot Optional Parameters
-[[ID] [Type] [Description] [Default]]
-[[_stroke_color] [`svg_color`] [Outline of the circle that is being drawn.] [black] ]
-[[_point_style] [`point_shape`] [Shape of the point. Options currently are: [^none], [^circle], and [^square].] [circle]]
-[[_size] [`unsigned int`] [Height/width of the circle and square.] [10]]
-[[_x_functor] [*] [A class or functor that contains a conversion function. You will not have to worry about this, unless you are trying to plot a container of type that does not have a conversion to double, for example, age of a user-defined type `humans`. For example:
-``
-class my_functor
-{
- typdef double result_type;
-
- double operator()(const human& _hum)
- {
- return (double)(_hum.age());
- }
-}
-
-// ...
-
-plot(my_plot, my_data, "Lions", _x_functor = my_functor());
-``
-][
-`boost_default_convert` is sufficient in all cases where the data stored in
-the container can be directly cast to a `double`.]]]
-
-Here are some examples of using of the 1D_plot `plot` method:
-[h4 Using 1D_plot fill and stroke colors]
-
- my_plot.plot(my_data, "Lions",
- _fill_color = red,
- _stroke_color = black);
-
-This has the same effect as the following:
-
- my_plot.plot(my_data, "Lions", red, black); // Order is significant:
- // fill is red and stroke is black.
-
-and also the same effect as:
-
- my_plot.plot(my_data, "Lions",
- _stroke_color = black,
- _fill_color = red);
-
-Since _fill_color is a Boost.Parameter deduced parameter, when two svg_colors are used in the same function call, they are always inferred in the following order:
-(fill, stroke).
-[endsect] [/svg_1d_plot_interface]
-
-[section:svg_2d_plot_interface `svg_2d_plot` Public Interface]
-[table 2D_plot Miscellaneous
- [[Signature] [Description]]
- [[`svg_2d_plot()`] [See the defaults section for further details.]]
- [[`svg_2d_plot& image_size(unsigned int, unsigned int)`] [Sets the size (pixels) of the plot image produced.]]
- [[`svg_2d_plot& title(const std::string&)`] [Sets the string to be used for the title.]]
- [[`svg_2d_plot& title_font_size(unsigned int)`] [Sets the font size for the title.]]
- [[`svg_2d_plot& legend_title_font_size(unsigned int)`] [Sets the font size for the legend title.]]]
-
-[table 2D_plot Commands
- [[Signature] [Description]]
- [[`svg_2d_plot& axis_on(bool)`] [Sets whether the axis is on (true) or off.]]
- [[`svg_2d_plot& legend_on(bool)`] [Sets whether the legend is on (true) or off.]]
- [[`svg_2d_plot& plot_window_on(bool)`] [Sets whether the plot will be displayed in its own window, or will be "full screen" in the image.]]
- [[`svg_2d_plot& title_on(bool)`] [Determines whether or not the image title is displayed.]]
- [[`svg_2d_plot& x_label_on(bool)`] [Sets whether or not the X axis label will show.]]
- [[`svg_2d_plot& x_major_grid_on(bool)`] [Determines whether or not the major grid on the X axis will be displayed.]]
- [[`svg_2d_plot& x_major_labels_on(bool)`] [sets whether or not the major ticks will be labelled on the x axis.]]
- [[`svg_2d_plot& x_minor_grid_on(bool)`] [Determines whether or not the minor grid on the X axis will be displayed.]]
- [[`svg_2d_plot& y_label_on(bool)`] [Sets whether or not the Y axis label will show.]]
- [[`svg_2d_plot& y_major_grid_on(bool)`] [Determines whether or not the major grid on the Y axis will be displayed.]]
- [[`svg_2d_plot& y_major_labels_on(bool)`] [sets whether or not the major ticks will be labelled on the Y axis.]]
- [[`svg_2d_plot& y_minor_grid_on(bool)`] [Determines whether or not the minor grid on the Y axis will be displayed.]]]
-
-[table 2D_plot Colors
- [[Signature] [Description]]
- [[`svg_2d_plot& title_color(const svg_color &col)`] [Set the plot title color.]]
- [[`svg_2d_plot& background_color(const svg_color &col)`] [Set the background color for the whole image.]]
- [[`svg_2d_plot& legend_background_color(const svg_color &col)`] [Set the background color for the legend as `col`, an RGB color.]]
- [[`svg_2d_plot& legend_border_color(const svg_color &col)`] [Set the border color for the legend as `col`, an RGB color.]]
- [[`svg_2d_plot& background_border_color(const svg_color &col)`] [Set the background border color for the legend as `col`, an RGB color.]]
- [[`svg_2d_plot& plot_background_color(const svg_color &col)`] [Set the color of the plot area. Note: this only goes into effect if plot_area(true) has been called.]]
- [[`svg_2d_plot& x_axis_color(const svg_color &col)`] [Sets the color of the lines that form the axis.]]
- [[`svg_2d_plot& x_label_color(const svg_color &col)`] [Sets the color of the labels that go along the X axis.]]
- [[`svg_2d_plot& x_major_tick_color(const svg_color &col)`] [Sets the color of the major ticks of the x-axis.]]
- [[`svg_2d_plot& x_major_grid_color(const svg_color &col)`] [Sets the color of the grid that runs perpindicular to the X axis]]
- [[`svg_2d_plot& x_minor_tick_color(const svg_color &col)`] [Sets the color of the minor ticks of the x-axis.]]
- [[`svg_2d_plot& y_axis_color(const svg_color &col)`] [Sets the color of the lines that form the Y axis.]]
- [[`svg_2d_plot& y_label_color(const svg_color &col)`] [Sets the color of the labels that go along the Y axis.]]
- [[`svg_2d_plot& y_major_tick_color(const svg_color &col)`] [Sets the color of the major ticks of the Y-axis.]]
- [[`svg_2d_plot& y_major_grid_color(const svg_color &col)`] [Sets the color of the grid that runs perpindicular to the Y axis.]]
- [[`svg_2d_plot& y_minor_tick_color(const svg_color &col)`] [Sets the color of the minor ticks of the Y-axis.]]
- ]
-
-[table 2D_plot Axis Information
- [[Signature] [Description]]
- [[`svg_2d_plot& x_axis_width(unsigned int)`] [Sets the stroke width (pixels) of the x-axis.] ]
- [[`svg_2d_plot& x_label(const std::string&)`] [Sets the label of the x-axis. You must set `x_label(true)` to display the label.] ]
- [[`svg_2d_plot& x_major_interval(double)`] [Sets the distance (Cartesian units) between ticks on the x-axis.] ]
- [[`svg_2d_plot& x_major_tick_length(int)`] [Sets the length (pixels) of the x-axis major ticks.] ]
- [[`svg_2d_plot& x_major_tick_width(unsigned int)`] [Sets the width (pixels) of the major ticks on the x-axis.] ]
- [[`svg_2d_plot& x_minor_tick(unsigned int)`] [Sets the length (pixels) of the x-axis minor ticks.] ]
- [[`svg_2d_plot& x_minor_tick_length(int)`] [Sets the length (pixels) of the x-axis minor tick lengths.] ]
- [[`svg_2d_plot& x_minor_tick_width(unsigned int)`] [Sets the width (pixels) of the minor ticks on the x-axis.] ]
- [[`svg_2d_plot& x_num_minor_ticks(int)`] [Sets the number of minor ticks between each major tick.] ]
- [[`svg_2d_plot& x_range(double x1, double x2)`] [Sets the scale of the x axis from x1 to x2. Throws an exception if x2 <= x1.] ]
- [[`svg_2d_plot& y_axis_width(unsigned int)`] [Sets the stroke width of the x-axis.] ]
- [[`svg_2d_plot& y_label(const std::string&)`] [Sets the label of the Y-axis. You must set `x_label(true)` to display the label.] ]
- [[`svg_2d_plot& y_major_tick(double)`] [Sets the distance (in Cartesian units) between ticks on the Y axis] ]
- [[`svg_2d_plot& y_major_tick_length(int)`] [Sets the length (pixels) of the Y axis major ticks.] ]
- [[`svg_2d_plot& y_major_tick_width(unsigned int)`] [Sets the width (pixels) of the major ticks on the Y axis.] ]
- [[`svg_2d_plot& y_minor_tick(unsigned int)`] [Sets the length (pixels) of the Y axis minor ticks.] ]
- [[`svg_2d_plot& y_major_tick_length(int)`] [Sets the length (pixels) of the Y axis minor tick lengths.] ]
- [[`svg_2d_plot& y_minor_tick_width(unsigned int)`] [Sets the width (pixels) of the minor ticks on the Y axis.] ]
- [[`svg_2d_plot& y_num_minor_ticks(int)`] [Sets the number of minor ticks between each major tick.] ]
- [[`svg_2d_plot& y_scale(double y1, double y2)`] [Sets the scale of the Y axis from y1 to y2. Throws an exception if y2 <= y1.] ]
-]
-
-(Note: Getters omitted for now. TODO)
-
-[heading The `plot()` Method]
-The `plot()` method is defined using Boost.Parameter. As such, it supports a
-few extra named parameters, as well as a deduced parameter.
-
-[table 2D_plot Required parameter
-[[ID] [Type (* is a wildcard)] [Description]]
-[[_container] [*] [Any object that can return an iterator with begin() and end()]]
-[[_title] [`std::string`] [The name of this series]]]
-
-[table 2D_plot Deduced parameter
-[[ID] [Type] [Description] [Default]]
-[[_fill_color] [`svg_color`] [This is the color that shows up inside of the circle that is
-being drawn] [white] ]]
-
-[table 2D_plot Optional Parameters
-[[ID] [Type] [Description] [Default]]
-[[_bezier_on] [`bool`] [ This determines whether or not Bézier curve interpolation will be applied to the plot lines. It is important to note that the curve interpolation is still in its infancy, and should only be used with reasonably nice data sets]]
-[[_line_on] [`bool`] [ This determines whether or not there are lines drawn between data points.] [false]]
-[[_line_color] [`bool`] [ This determines the color of the lines between data points.] [black ]]
-[[_area_fill_color] [`svg_color`][Defining this enables the "Fill Area Under Axis" feature. the color you define will be the fill color between a line and the area under the axis. This only takes effect if `_line_on = true` is called.]]
-[[_stroke_color] [`svg_color`] [The outline of the circle that is being drawn.] [black] ]
-[[_point_style] [`point_shape`] [This is the shape of the point. Options currently are between [^none], [^circle], and [^square].] [circle]]
-[[_size] [`unsigned int`] [This is the height/width of the circle and square.] [10]]
-[[_x_functor] [*] [A class or that contains a conversion function. You will not have to worry about this, unless you are trying to accomplish stuff like plotting a vector of humans. For example:
-``
-class my_functor
-{
- typdef pair<double, double> result_type;
-
- pair<double, double> operator()(const human& _hum) const
- {
- return pair<double, double>(i, _hum.age());
- }
-}
-
-// snip
-
-plot(my_plot, my_data, "People", _x_functor = my_functor());
-``
-][
-`boost_default_2d_convert` (the default) is sufficient in all cases where the data stored in
-the container can be directly cast to a double.]]]
-
-Here are some examples of correct uses:
-[h3 Using fill and stroke colors]
-
- my_plot.(my_data, "Lions",
- _fill_color = red,
- _stroke_color = black);
-
-This has the same effect as the following:
-
- my_plot.plot(my_data, "Lions", red, black);
-
-and also the same effect as:
-
- my_plot.plot(my_data, "Lions",
- _stroke_color = black,
- _fill_color = red);
-
-Since _fill_color is a deduced parameter, when two svg_colors are used in the
-same function call, they are always inferred in the following order: (fill,
-stroke).
-[endsect] [/section:svg_2d_plot_interface]
-
-[section:svg_boxplot_interface `svg_boxplot` Public Interface]
-[table Boxplot Miscellaneous
- [[Signature] [Description]]
- [[`svg_boxplot()`] [See the defaults section for further details.]]
- [[`svg_boxplot& image_size(unsigned int, unsigned int)`] [Sets the size (pixels) of the plot image produced.]]
- [[`svg_boxplot& title(const std::string&)`] [Sets the string to be used for the plot title.]]
- [[`svg_boxplot& title_size(unsigned int)`] [Sets the font size for the plot title.]]]
-
-[table Boxplot Commands
- [[Signature] [Description]]
- [[`svg_boxplot& title_on(bool)`] [Determines whether or not the image title is displayed.]]
- [[`svg_boxplot& x_label_on(bool)`] [Sets whether or not the X-axis label will show.]]
- [[`svg_boxplot& x_labels_on(bool)`] [sets whether or not the major ticks will be labelled on the x axis.]]
- [[`svg_boxplot& y_label_on(bool)`] [Sets whether or not the Y-axis label will show.]]
- [[`svg_boxplot& y_major_labels_on(bool)`] [sets whether or not the major ticks will be labelled on the Y axis.]]]
-
-[table Boxplot Colors
- [[Signature] [Description]]
- [[`svg_boxplot& title_color(const svg_color &col)`] [Set the title color.]]
- [[`svg_boxplot& background_color(const svg_color &col)`] [Set the background color for the whole image.]]
- [[`svg_boxplot& background_border_color(const svg_color &col)`] [Set the background border color for the legend as `col`, an RGB color.]]
- [[`svg_boxplot& plot_background_color(const svg_color &col)`] [Set the color of the plot area. Note: this only goes into effect if plot_area(true) has been called.]]
- [[`svg_boxplot& x_label_color(const svg_color &col)`] [Sets the color of the labels that go along the X-axis.]]
- [[`svg_boxplot& x_tick_color(const svg_color &col)`] [Sets the color of the major ticks of the X-axis.]]
- [[`svg_boxplot& y_label_color(const svg_color &col)`] [Sets the color of the labels that go along the X-axis.]]
- [[`svg_boxplot& y_major_tick_color(const svg_color &col)`] [Sets the color of the major ticks of the Y-axis.]]
- [[`svg_boxplot& y_minor_tick_color(const svg_color &col)`] [Sets the color of the minor ticks of the Y-axis.]]
- ]
-
-[table Boxplot Axis Information
- [[Signature] [Description]]
- [[`svg_boxplot& x_label(const std::string&)`] [Sets the label of the X-axis. It will be shown *only if* `x_label(true)`.] ]
- [[`svg_boxplot& x_tick_length(int)`] [Sets the length (pixels) of the X-axis ticks.] ]
- [[`svg_boxplot& x_tick_width(unsigned int)`] [Sets the width (pixels) of the major ticks on the X-axis.] ]
- [[`svg_boxplot& y_label(const std::string&)`] [Sets the label of the X-axis. It will be shown *only if* `x_label(true)`.] ]
- [[`svg_boxplot& y_major_interval(double)`] [Sets the distance (in Cartesian units) between ticks on the Y-axis.] ]
- [[`svg_boxplot& y_major_tick_length(int)`] [Sets the length (pixels) of the Y-axis major ticks.] ]
- [[`svg_boxplot& y_major_tick_width(unsigned int)`] [Sets the width (pixels) of the major ticks on the Y-axis.] ]
- [[`svg_boxplot& y_num_minor_tick(unsigned int)`] [Sets the length (pixels) of the Y-axis minor ticks.] ]
- [[`svg_boxplot& y_major_tick_length(int)`] [Sets the length (pixels) of the Y-axis minor tick lengths.] ]
- [[`svg_boxplot& y_minor_tick_width(unsigned int)`] [Sets the width (pixels) of the minor ticks on the Y-axis.] ]
- [[`svg_boxplot& y_num_minor_ticks(int)`] [Sets the number of minor ticks between each major tick.] ]
- [[`svg_boxplot& y_range(double y1, double y2)`] [Sets the scale of the Y-axis from y1 to y2. Throws an exception if y2 <= y1.] ]
-]
-
-(Note: Getters omitted for now - TODO)
-
-[heading The `plot()` Method]
-
-The `plot()` method is defined using Boost.Parameter. As such, it supports a
-few extra named parameters, as well as a deduced parameter.
-
-[table Required parameter
-[[ID] [Type (* is a wildcard)] [Description]]
-[[ctr] [*] [Any object that can return an iterator with begin() and end().]]
-[[name] [`std::string`] [The name of this data series.]]]
-
-[table Optional Parameters
-[[ID] [Type] [Description] [Default]]
-[[box_style] [`const svg_style&`] [Styles the box of the boxplot.] [`svg_style(white, black, 1)`.]]
-[[median_style] [`const svg_style&`] [Styles the median of the boxplot.] [`svg_style(white, black, 1)`.]]
-[[axis_style] [`const svg_style&`] [Styles the data range line (the line going through the middle.] [`svg_style(white, black, 1)`.]]
-[[min_whisker_style] [`const svg_style&`][Styles the lower whisker.] [`svg_style(white, black, 1)`]]
-[[max_whisker_style] [`const svg_style&`] [Styles the upper whisker.] [`svg_style(white, black, 1)`]]
-[[mild_outlier_style] [`const plot_point_style&`] [Styles outliers within 3 Inter-Quartile Ranges (IQRs) of the edges of the box] [`plot_point_style(black, black, 0)`]]
-[[ext_outlier_style] [`const plot_point_style&`] [Styles outliers more than 3 IQRs away from the box.] [`plot_point_style(white, black, 1)`]]
-[[whisker_length] [unsigned int] [Determines how long the whiskers at the end of the data range line will be] [30]]
-[[box_width] [unsigned int] [Determines the width of the box.] [60]]
-
-[[functor] [*] [A class or that contains a conversion function. You will not have to worry about this, unless you are trying to accomplish stuff like plotting a container of a user-defined class, for example human, that does not have a conversion to double. For example:
-``
-class my_functor
-{
- typdef double result_type;
-
- double operator()(const human& body) const
- {
- return double(body.age());
- }
-}
-
-// ...
-
-plot(my_data, "People", functor = my_functor());
-``]
-[`boost_default_convert` (default) is sufficient in all cases where the data stored in the container can be directly cast to a double.]]
-] [/ table Required parameter]
-[endsect] [/section:svg_2d_plot_interface]
-[endsect] [/section:interface]
-
-
-
-
-[section:implementation Implementation & Rationale]
-
-[h4 Controlling the format of Label values]
-
-Both the X and Y axis tick can be labelled with their values.
-
-The precision (number of decimal digits used) for both x and y
-can be controlled using the function
-`.x_value_precision(int);` and `.y_value_precision(int);`
-
-for example, `my_plot..y_value_precision(1) would suffice
-for values in a limited range, like from 0.0 to 0.5.
-
-The default is chosen to be 3
-(otherwise the C++ Standard default precision of 6 would be chosen,
-a rather larger precision than is typically required).
-
-If a lower precision is acceptable for the values used to label the axis,
-this will reduce the length and space required for the label.
-
-It may also be necessary to use exponent format to avoid either
-extremely long labels, or labels that are all the same.
-To control formatting, two functions
-`.x_value_ioflags(int);` and `.y_value_ioflags(int);`
-
-are provided and these provide control in the normal C++ Standard library
-iostream function `flags(int)`.
-
-Note that this function sets *all* the flags, so to obtain 'default' behaviour
-it is probably necessary to at least set the decimal bit with `ios::dec`.
-
-You may wish to prevent exponent format by including `ios::fixed`.
-
-Other settings can be added with other format flags, most usefully `ios::scientific`.
-
-[note It is, of course, possible to produce combinations that are probably not desired,
-like `ios::hex` | `ios::scientific` or whose effect is undefined behaviour.]
-
-If you need or want to use scientific (exponential format) it is unfortunate that
-the standard library specification always requires 3 exponent digits to be used:
-this is ugly, takes up valuable space and is rarely necessary,
-and indeed impossible with floats.
-
-However, with some experimentation, it is possible to label ticks values reasonably well.
-
-
-
-[h4 Number of Minor ticks]
-
-`x_num_minor_ticks()` and `x_num_minor_ticks()`
-
-are provided control the number of minor ticks between the major ticks.
-
-There are a total of x_num_minor_ticks + 1 ticks for each major tick,
-for example, a major on 0, minor on 1,2,3,4, major on 5 ...
-
-For integer usually binary, octal and hexadecimal,
-num_minor_ticks = 2[super]n -1 are useful, for example
- 1 if major ticks are even will give minor ticks on odd values),
- 3 if major on 0, minor on 1, 2, 3 and major on 4...
- 7 if major on 0, minor on 1,2,3,4,5,6,7 and major on 8 ...
- 15 if major on 0, minor on 1,2,3,4,5,6,7, 8,9,A,B,C,D,E,F, major on 0x10...
-
- For decimal based values, num_minor_ticks 1, 4, 9 are useful, for example:
- 1 if major are even, major 0, minor 1, major 2 ...
- 4 if major on 0, minor on 1,2,3,4, major on 5 ...
- 9 if major on 0, minor on 1,2,3,4,5,6,7,8,9, major on 10
-
-
-
-
-
-
-
-
-[/h4 Minor ticks]
-
-
-This section provide more information about this implementation
-and some of the rationale for design decisions.
-
-[h4 SVG Specification]
-
-[@http://www.w3.org/TR/SVG/ SVG version 1.1]
-was used in the design of this version but
-[@http://www.w3.org/TR/SVG12/ SVG 1.2 draft specification]
-is also available and appears to be final and designed to be backward compatible.
-No changes that affect the code produced
-have been detected from a quick perusal of this document.
-It is probable but untested that the svg files produced will also comply
-with the [@http://www.w3.org/TR/SVGMobile12/ Tiny svg for mobiles specification].
-
-[h4 Design]
-
-SVG would be a flat format if it weren't for
-the <g> elements: these make it parse into a tree.
-
-If each element has its own style (fill, stroke etc)
-then the .svg file size would be increased.
-(This style is used by other packages that output svg).
-
-So the [@http://www.w3.org/TR/SVG/struct.html#GElement group element]
-is used with each type given an id to allow reference back to it.
-
-svg_style_details.hpp contains a list of these groups,
-for example: PLOT_X_AXIS, PLOT_TITLE... indexing an array of string
-document id "yAxis", "title"...
-
-and these can be seen, with style information in the output, for example:
-
- <g id="yAxis" stroke="rgb(0,0,0)"></g>
-
- <g id="title">
- <text x="250" y="20" text-anchor=" middle" font-size="20">Demo 1D plot</text></g>
-
-In the general case, the most that occurs grouped together is the
-style information: axis lines all share the same style information,
-points in a series all share the same color information, and this is
-also a logical grouping. One can can add a series, and then come back later
-and change the <g> element above the points, which is a single change,
-and have the change reflected on every point in the series. It seems
-this is the most logical way to represent the data in memory.
-
-
-
-
-
-[h4 Economising on .svg File Size]
-
-Some of the factors affecting the file size are:
-
-# Excessive precision of data points.
-
-If plots are to be viewed only at a modest size,
-then the precision of x and y coordinates
-does not need to be higher than about 1 in 1000,
-so a precision of about 3 decimal digits will suffice.
-
-A default of 3 decimal digits has been chosen,
-but the precision can be controlled to permit a higher resolution,
-for example on a map that is printed at 2000 dpi.
-or even only 2 decimal digits for a display on a mobile,
-where file transfer speed may make reducing file size important.
-
-# Excessive data points.
-When plotting functions, it is sensible to avoid using more data points
-than are justified by the resolution. Again 1 in 1000 is a typical number,
-and by using bezier curve fitting, as few as 100 points should be sufficient
-to produce a visibly perfectly smooth curve for 'well-behaved' functions.
-
-Plotting extremely large datasets from files may cause memory overflow,
-as with any STL container held in memory.
-It may be necessary to perform some averaging or smoothing,
-or just using a 'stride' to select, for example, every 100th value
-to be plotted.
-
-# Redundant style specifications.
-
-The use of the g or group element has been used to try to reduce
-repeated (and thus redundant) style specifications.
-More efficient use of groups may be possible.
-
-# Not using default style and attributes where possible.
-
-Some effort has been made to use defaults, but more may be possible.
-
-[h4 Adding document information to the svg Image files]
-
-Several ways of adding useful information to the svg document are provided.
-If the strings are null (the default) nothing is output.
-
-Member function svg& description(const std::string) allows output like:
-
- <desc>My Document description</desc>
-
- svg& document_title(const std::string)
-
- <title>My Document title</title>
-
-(Note that this is *not* the same as the title of the plot.)
-
-
-[h4 Adding Copyright and License conditions for the SVG Image files]
-
-In general, setting values for items like copyright_holder will ensure that
-they appear in the SVG document both as XML and as XML comment.
-If none are set, nothing will be output, to minimize file size.
-
-[@http://www.w3.org/TR/2004/WD-SVG12-20041027/nonvisual.html www.w3.org/TR/2004/WD-SVG12-20041027]
-discusses primary documents, of type .svg in section 17.3
-Adding Copyright information to an SVG document:
-SVG encourages the use of a common metadata format for inclusion of copyright information.
-Metadata relevant to the data copyright of the entire document
-should be added to metadata element of the topmost svg element.
-This allows the author to unambiguously state the licensing terms for the entire document.
-The scheme may also be used elsewhere in the document,
-for pieces that have different licensing. For example,
-an SVG font may have specific licensing details expressed in its own metadata element.
-
-Note that inclusion of this metadata does not provide the author with a method
-in which to protect or enforce their copyright,
-it simply bundles the copyright information with the content in a defined manner.
-Providing methods, technical or non-technical, for data protection
-is currently beyond the scope of the SVG specification.
-
-This does not exclude the use of other metadata schemes.
-
-A simple way of adding metadata for copyright is provided by functions to set
-
- copyright_holder(std::string);
- copyright_date(std::string);
-
-(as well as description and document_title, and .svg filename if any).
-
-For example, setting these will incorporate an XML comment
-
- <!-- SVG Plot Copyright Paul A. Bristow 2007 -->
-
-and also as meta data:
-
- <meta name="copyright" content="Paul A. Bristow" />
- <meta name="date" content="2007" />
-
-The Creative Commons Metadata Set is also provided as an option in this implementation,
-following [@http://www.ibm.com/developerworks/xml/library/x-think18.html this example.]
-
-The [@http://creativecommons.org/about/licenses Creative Commons License] is one method
-of providing license terms in a machine-readable format.
-
-Typical data added to the file would be XML like this:
-
- <metadata>
- <rdf:RDF xmlns:cc="http://web.resource.org/cc/"
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
- <cc:work rdf:about="filename.svg">
- <!-- insert filename or title here -->
- <dc:title>Plot title</dc:title>
- <dc:creator>Boost.Plot</dc:creator>
- <dc:author>Paul A. Bristow</dc:author>
- <dc:format>application/xhtml+xml+svg</dc:format>
- <cc:license rdf:about="http://creativecommons.org/licenses/by-sa/.0/">
- <cc:requires rdf:resource="http://web.resource.org/cc/Notice"/>
- <cc:permits rdf:resource="http://web.resource.org/cc/Reproduction"/>
- <cc:permits rdf:resource="http://web.resource.org/cc/Distribution"/>
- <cc:requires rdf:resource="http://web.resource.org/cc/Attribution"/>
- <cc:permits rdf:resource="http://web.resource.org/cc/CommercialUse"/>
- </cc:license>
- </cc:work>
- </rdf:RDF>
- </metadata>
-
-cc:permits can also be cc:requires or cc:prohibits, as required.
-
-A license that permits reproduction, distribution and commercial use,
-but requires both notice & attribution
-is probably most suitable for Boost documents as is therefore chosen as the default.
-
-This license can be included by calling svg member function `is_license(true)`.
-If this license will be included can be discovered by calling svg member function `is_license()`.
-
-Similarly functions
- const std::string license_reproduction();`
- const std::string license_distribution();
- const std::string license_attribution();
- const std::string license_commercialuse()
-allow you to find the current license requirements.
-
-[@http://web.resource.org/rss/1.0/modules/cc/ RDF] is the metadata format chosen by
-[@http://creativecommons.org Creative Commons].
-
-and references the resource (cc) at
-[@http://web.resource.org/cc/] using the definition of its XML namespace:
-
- rdf:RDF xmlns:cc="http://web.resource.org/cc/"
-
-Options are [@http://web.resource.org/rss/1.0/modules/cc/ summarized].
-
-A way of seting the author is also provided, in case the copyright has been assigned to someone else,
-for example a publisher. svg set and get member functions:
-
- author(const std::string);
- const std::string author();
-
-[h4 Using Unicode Symbols (usually Math Sumbols and Greek letters)]
-
-Unicode symbols that work on most browsers in html are listed at:
-
-[@boost\math_toolkit\libs\math\doc\sf_and_dist\html4_symbols.qbk html4_symbols],
-[@http://www.htmlhelp.com/reference/html40/entities/symbols.html reference/html40/entities/symbols],
-and [@http://www.alanwood.net/demos/ent4_frame.html demos].
-
-However support for Unicode in SVG is much less fully implemented and displayed results are variable.
-
-The Unicode value in decimal 9830 or hex x2666 must be prefixed with `& `and terminated with `;`
-for example, `&x2666`; for xml
-and then enveloped with "" to convert to a const std::string, for example: "&#x2666;" for diamond.
-
-Thus diamond can be used a point marker.
-
-Similarly for greek in title, legend and axes:
-
- .legend_title("My Legend &#956;") // generates <em>&#956;</em> greek mu
-
-
-[h4 Subscript and superscript in title, legend and labels]
-
-It is very common need to show superscript, in units for example, area (m[super 2]),
-and subscript for a[sub 0, a[sub 2]...
-
-Sadly, although these needs are both OK with html,
-showing sub and superscripts in svg doesn't work well as yet
-because browsers don't handle <sub> or <sup>, nor baseline-shift.
-
-The only reasonably widely supported feature is
-Unicode symbols for superscript 1, 2 and 3 (only).
-For example, Latin1_symbols: sup1 &185; sup2 &178; sup3 &179; work on Firefox & IE6/7.
-
-But&#2071; &#2075; &#2090; - show just square boxes.
-
-The SVG specification covers <sub, <super>, and the general baseline-shift,
-but these are just not implemented yet.
-
-[@http://unicode.org/reports/tr25/#_Toc28 2.8 Superscripts and Subscripts]
-[@http://www.unicode.org/charts/symbols.html symbols]
-
-At Nov 2007, the following commands don't have very useful coverage.
-<tspan baseline-shift = \"50%\" font-stretch = \"wider\" font-variant = \"small-caps\" > 3 </tspan>
-baseline-shift = \"50%\" & super and subscript down't work on Firefox 2.
-but DO on IE6 (and probably 7)
-font-stretch = \"wider\" No effect Firefox or IE6.
-font-variant = \"small-caps\" No effect Firefox or IE6.
-<tspan baseline-shift = \"50%\" >3/4 </tspan>
-
-This has been reported as a bug to Mozilla,
-and is regarded a duplicate of other reports on sub and super
-https://bugzilla.mozilla.org/show_bug.cgi?id=401102
-
-but baseline-shift has no effect on Firefox 2. See
-http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=7410&view=previous
-
-The use of <tspan to shift characters *is* feasible, as shown
-[@http://www.w3.org/TR/SVG/images/text/tspan02.svg in this example],
-which displays correctly in all browsers,
-
-and it is also possible to use
-
- <svg:g transform="translate(5.062500, -5.367188)">
-
-to shift the next letter up, but these parameters are font-size related,*
-and the svg most verbose.
-
-None of these method provides a *convenient* method of creating the right string
-for titles, legends, or axis labels, but it may be possible to devise code that does.
-
-[h4 Coding style]
-
-In general [@http://www.boost.org/libs/spirit/doc/style_guide.html Boost coding style guide]
-and [@http://groups.yahoo.com/group/boost/files/coding_guidelines.html Boost coding guidelines]
-has been used.
-
-But some work is needed to rename arguments named with lading underscores in violation of
-guidance 2.14:
-
-Names containing double underscores (``__'') or beginning with single underscores (``_'')
-are entirely forbidden. These are reserved to the C++ implementation in various contexts.
-
-and also
-
-2.10. Data members should have a ``m_'' prefix, to distinguish them
-from an otherwise-identical member function name
-and to clarify their provenance in code which uses them.
-Non-member names must not have an ``m_'' prefix.
-
-Some data members end with _ to avoid name clashes, another widely used convention.
-
-[endsect] [/section:implementation Implementation & Rationale]
-
-
-[section:acknowledgements Acknowledgements]
-I would like to thank the following people:
-
-* [*Google]: For offering Summer of Code, and giving me the opportunity to do
-something I never would have done otherwise.
-* [*Joaquín Mª López Muñoz]: My GSoC mentor. His proofreading and advice
-helped shape the project into what it is today, and prevented small problems
-from becoming major problems.
-* [*Paul A. Bristow]: For showing an active interest, offering literally dozens
-of minor and major features he'd like to see, and for helping with Boost.Build.
-* [*Matias Capeletto]: For showing an active interest, and offering feature
-suggestions.
-* [*Sarah Braun]: For helping me pick colors for examples.
-* [*Boost Community]: For all of the encouragement, suggestions, disagreements,
-and patience.
-
-[endsect] [/section:acknowledgements]

Modified: sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.xml
==============================================================================
--- sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.xml (original)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_plot.xml 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<article id="svg_plot" name="SVG_Plot" dirname="svg_plot" last-revision="$Date: 2007/08/14 01:54:52 $"
+<article id="svg_plot" name="SVG_Plot" dirname="svg_plot" last-revision="$Date: 2008/01/08 02:58:43 $"
  xmlns:xi="http://www.w3.org/2001/XInclude">
   <articleinfo>
     <authorgroup>
@@ -43,16 +43,16 @@
         </itemizedlist>
       </listitem>
       <listitem>
- The pages labelled &quot;* Public Interface&quot; give reference information
- for their respective subjects. You can find all public methods (and data
- members, when structs are concerned) in these sections.
+ The pages labelled &quot;<emphasis role="bold">Public Interface</emphasis>&quot;
+ give reference information for their respective subjects. You can find all
+ public methods (and data members, when structs are concerned) in these sections.
       </listitem>
       <listitem>
         If you have a feature request, or if it appears that my implementation is
         in error, please check the <ulink url="svg_plot/todo.html">To Do</ulink>
- page first, as well as the area's respective rationale section, if it exists.
- If I you do not find your idea/complaint, please reach me either through
- the Boost dev list, or email me at jakevoytko (at) gmail (dot) com
+ page first, as well as the respective rationale section, if it exists. If
+ I you do not find your idea/complaint, please reach me either through the
+ Boost development list, or email me at jakevoytko (at) gmail (dot) com
       </listitem>
     </itemizedlist>
     <anchor id="svg_plot.howtouse.admonishments"/>
@@ -77,8 +77,8 @@
       <para>
         <para>
           These contain information that is imperative to understanding a concept.
- Failure to follow these blocks will likely result in undesired behavior.
- Read all of these you find.
+ Failure to follow suggestions in these blocks will probably result in undesired
+ behavior. Read all of these you find.
         </para>
       </para>
     </important>
@@ -86,7 +86,7 @@
       <para>
         <para>
           It is imperative that you follow these. Failure to do so will lead to incorrect,
- and likely undesired, results in the plot
+ and likely undesired, results in the plot.
         </para>
       </para>
     </warning>
@@ -96,8 +96,8 @@
     <important>
       <para>
         <para>
- This is not currently a Boost library. It is a GSoC project whose mentor
- organization is Boost.
+ This is not (yet) a Boost library. It is a <ulink url="http://code.google.com/soc/2007/boost/about.html">GSoC
+ project</ulink> whose mentor organization is Boost.
         </para>
       </para>
     </important>
@@ -109,38 +109,56 @@
       Humans have a fantastic capacity for visual understanding, and merely looking
       at data organized in one, two, or three dimensions allows us to see relations
       not otherwise visible in a list of numbers. Computers, however, deal with information
- numerically, and C++ and the STL do not currently offer a way to bridge the
- gap. This library allows the user to easily plot data stored in STL containers
- with (hopefully!) minimal intervention.
+ numerically, and C++ and the <ulink url="http://en.wikipedia.org/wiki/Standard_Template_Library">Standard
+ Template Library (STL)</ulink> do not currently offer a way to bridge the gap.
+ This library helps the user to easily plot data stored in STL containers.
     </para>
     <para>
       This project is focused on using STL containers in order to graph data on a
- one-dimensional and two-dimensional (and if time allows, 3D!) plot. The plot
- will currently be written in an SVG image, compliant with the <ulink url="http://www.w3.org/TR/SVG11/W3C">standard</ulink>.
- The goals of the project are as follows:
+ one-dimensional and two-dimensional (and in future, perhaps, 3D) plot. The
+ plot will currently be written to a <ulink url="http://en.wikipedia.org/wiki/Scalable_Vector_Graphics">Scalable
+ Vector Graphic image</ulink>.
+ </para>
+ <para>
+ <ulink url="http://www.w3.org/TR/SVG11/">Scalable Vector Graphics (SVG)</ulink>
+ is an <ulink url="http://www.w3.org/TR/REC-xml/#sec-comments">XML specification</ulink>
+ and file format for describing two-dimensional vector graphics.
+ </para>
+ <para>
+ SVG files (.svg) can be viewed with a browser like Mozilla Firefox (newer version),
+ <ulink url="http://www.adobe.com/products/acrobat/readstep2.htmlAdobe">Acrobat
+ Reader</ulink>, many other graphics program, and by Microsoft Internet Explorer,
+ provided a suitable <ulink url="http://www.adobe.com/svg/">Adobe SVG Veiwer
+ plug-in for SVG files</ulink> is installed.
+ </para>
+ <para>
+ The goals of the project are:
     </para>
     <itemizedlist>
       <listitem>
- To let users produce a simple plot with minimal intervention by using sane
- defaults
+ To let users produce simple plots with minimal intervention by using sane
+ defaults.
       </listitem>
       <listitem>
- To allow users to easily customize plots to their heart's content
+ To allow users to easily customize plots.
       </listitem>
       <listitem>
         To allow the user to talk to the plot classes using coordinate units rather
- than pixels or other arbitrary measures
+ than pixels or other arbitrary measures.
       </listitem>
       <listitem>
         To create the backbone of a <code><phrase role="identifier">svg</phrase></code>
- class that can be extended to fully support the standard
+ class that can be extended to fully support the standard.
+ </listitem>
+ <listitem>
+ compliance with the <ulink url="http://www.w3.org/TR/SVG11/">W3C Scalable
+ vector Graph standard</ulink>.
       </listitem>
     </itemizedlist>
     <note>
       <para>
         <para>
- I have only a student's grasp of C++, so if you have a suggestion to help
- me with design or implementation, email me at jakevoytko (at) gmail (dot)
+ Comments and suggestions to Jake Voytko at jakevoytko (at) gmail (dot)
           com
         </para>
       </para>
@@ -162,8 +180,8 @@
       </listitem>
       <listitem>
         Allow <emphasis role="bold">function pointers</emphasis> to specify functions
- as input. A use case where the user wants to just see what <literal>sin(x)</literal>
- looks like is easily imaginable.
+ as input. A typical use case is to just see what a function like <literal>sin(x)</literal>
+ looks like.
       </listitem>
       <listitem>
         <emphasis role="bold">Radian coordinate system</emphasis>.
@@ -173,7 +191,7 @@
         the SVG class useful for other things than solely making graphs!
       </listitem>
       <listitem>
- <emphasis role="bold">Automatic scaling</emphasis> of the axis
+ <emphasis role="bold">Automatic scaling</emphasis> of the axis.
       </listitem>
       <listitem>
         Allow <emphasis role="bold">2D plots of 1D containers</emphasis>. Currently
@@ -199,23 +217,23 @@
       </listitem>
       <listitem>
         Allow the user to provide a function object for generating <emphasis role="bold">custom
- axis labels</emphasis> (For example, months instead of integer representations
- of months)
+ axis labels</emphasis>, for example, label axes with names of months (Jan,
+ Feb, Mar...) instead of integer representations of months (1, 2, 3...).
       </listitem>
       <listitem>
- <emphasis role="bold">Logarithmic Axis</emphasis>
+ <emphasis role="bold">Logarithmic Axes</emphasis>.
       </listitem>
       <listitem>
- <emphasis role="bold">Histogram</emphasis>
+ <emphasis role="bold">Histograms</emphasis>.
       </listitem>
     </itemizedlist>
   </section>
   <section id="svg_plot.color">
     <title><link linkend="svg_plot.color"> Colors</link></title>
     <para>
- The project supports any RGB color, as well as a number of constants that are
- <ulink url="http://www.w3.org/TR/SVG/types.html#ColorKeywords">named by the
- SVG standard</ulink>.
+ The project supports any <ulink url="http://en.wikipedia.org/wiki/RGB_color_model">RGB
+ color</ulink>, as well as a number of colors that are <ulink url="http://www.w3.org/TR/SVG/types.html#ColorKeywords">named
+ by the SVG standard</ulink>.
     </para>
     <anchor id="svg_plot.color._code__phrase_role__identifier__svg_color_constant__phrase___code_"/>
     <bridgehead renderas="sect3">
@@ -224,14 +242,27 @@
     </bridgehead>
     <para>
       <code><phrase role="identifier">svg_color_constant</phrase></code> is simply
- an enumerated list. The colors are defined <ulink url="http://www.w3.org/TR/SVG/types.html#ColorKeywords">here</ulink>.
- The list contains all of your expected colors, such as black and red. The list
- contains one extra color element, <code><phrase role="identifier">blank</phrase></code>,
- used when you need to pass a color, but would not like it to show up. This
- comes in handy for defining defaults for functions, for example.
+ an enumerated list.
+ </para>
+ <para>
+ The constants are defined at <ulink url="../../../../boost/svg_plot/svg_color.hpp">svg_color.hpp</ulink>.
+ </para>
+ <para>
+ Examples of colors are at <ulink url="../../../svg_plot/example/svg_colors.cpp">svg_colors.cpp</ulink>.
+ </para>
+ <para>
+ The <ulink url="http://www.w3.org/TR/SVG/types.html#ColorKeywords">colors are
+ defined by the SVG standard here</ulink>. The list contains all of your expected
+ colors, such as magenta, pink and red, and many other shades.
+ </para>
+ <para>
+ The list also contains one extra color element, <code><phrase role="identifier">blank</phrase></code>,
+ defined as <code><phrase role="keyword">false</phrase></code>, used when you
+ need to pass a color, but would not like it to be visible. This comes in handy
+ for defining defaults for functions, for example.
     </para>
     <anchor id="svg_plot.color.example_of_using__code__phrase_role__identifier__svg_color_constant__phrase___code_"/>
- <bridgehead renderas="sect3">
+ <bridgehead renderas="sect4">
       <link linkend="svg_plot.color.example_of_using__code__phrase_role__identifier__svg_color_constant__phrase___code_">Example
       of using <code><phrase role="identifier">svg_color_constant</phrase></code></link>
     </bridgehead>
@@ -253,26 +284,30 @@
           for <code><phrase role="identifier">svg_color_constant</phrase></code>,
           so you can use a <code><phrase role="identifier">svg_color_constant</phrase></code>
           in place of a <code><phrase role="identifier">svg_color</phrase></code>
- and it will be implicitly converted. However, there is not currently an
- <code><phrase role="identifier">svg_color</phrase><phrase role="special">::</phrase><phrase
- role="keyword">operator</phrase><phrase role="special">=(</phrase><phrase
- role="identifier">svg_color_constant</phrase><phrase role="special">)</phrase></code>
- overload, so
+ and it will be implicitly converted. However, there is <emphasis role="bold">not</emphasis>
+ currently an <code><phrase role="identifier">svg_color</phrase><phrase
+ role="special">::</phrase><phrase role="keyword">operator</phrase><phrase
+ role="special">=(</phrase><phrase role="identifier">svg_color_constant</phrase><phrase
+ role="special">)</phrase></code> overload, so
 <programlisting>
 <phrase role="identifier">svg_color</phrase> <phrase role="identifier">my_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">red</phrase><phrase role="special">;</phrase>
 </programlisting>
- does not work.
+ does not have the desired effect, and nor does <code><phrase role="identifier">cout</phrase>
+ <phrase role="special">&lt;&lt;</phrase> <phrase role="identifier">red</phrase>
+ <phrase role="special">&lt;&lt;</phrase> <phrase role="identifier">endl</phrase><phrase
+ role="special">;</phrase></code> output the expected RGB(255,0,0) but instead
+ 119 the value of the enum!
         </para>
       </para>
     </note>
     <anchor id="svg_plot.color._code__phrase_role__identifier__svg_color__phrase___code__interface"/>
- <bridgehead renderas="sect3">
+ <bridgehead renderas="sect4">
       <link linkend="svg_plot.color._code__phrase_role__identifier__svg_color__phrase___code__interface"><code><phrase
       role="identifier">svg_color</phrase></code> interface</link>
     </bridgehead>
     <para>
       You can define a <code><phrase role="identifier">svg_color</phrase></code>
- using two different constructors
+ using two different constructors:
     </para>
     
 <programlisting>
@@ -285,13 +320,13 @@
     <important>
       <para>
         <para>
- Any integer value is accepted by the SVG standard, but negative values
- are rounded to 0, and positive values &gt; 255 are rounded down to 255.
+ Any integer value is accepted but negative values are contrained 0, and
+ positive values &gt; 255 are constrained to 255.
         </para>
       </para>
     </important>
     <anchor id="svg_plot.color.example_of_using__code__phrase_role__identifier__svg_color__phrase___code_"/>
- <bridgehead renderas="sect3">
+ <bridgehead renderas="sect4">
       <link linkend="svg_plot.color.example_of_using__code__phrase_role__identifier__svg_color__phrase___code_">Example
       of using <code><phrase role="identifier">svg_color</phrase></code></link>
     </bridgehead>
@@ -299,706 +334,775 @@
 <programlisting>
 <phrase role="keyword">using</phrase> <phrase role="keyword">namespace</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">svg</phrase><phrase role="special">;</phrase>
 
-<phrase role="identifier">svg_color</phrase> <phrase role="identifier">my_white</phrase><phrase role="special">(</phrase><phrase role="number">255</phrase><phrase role="special">,</phrase> <phrase role="number">255</phrase><phrase role="special">,</phrase> <phrase role="number">255</phrase><phrase role="special">);</phrase>
-<phrase role="identifier">svg_color</phrase> <phrase role="identifier">const_white</phrase><phrase role="special">(</phrase><phrase role="identifier">white</phrase><phrase role="special">);</phrase>
-
+<phrase role="identifier">svg_color</phrase> <phrase role="identifier">my_white</phrase><phrase role="special">(</phrase><phrase role="number">255</phrase><phrase role="special">,</phrase> <phrase role="number">255</phrase><phrase role="special">,</phrase> <phrase role="number">255</phrase><phrase role="special">);</phrase> <phrase role="comment">// RGB constructor.
+</phrase><phrase role="identifier">svg_color</phrase> <phrase role="identifier">const_white</phrase><phrase role="special">(</phrase><phrase role="identifier">white</phrase><phrase role="special">);</phrase> <phrase role="comment">// SVG defined named constructor.
+</phrase>
 <phrase role="identifier">BOOST_ASSERT</phrase><phrase role="special">(</phrase><phrase role="identifier">my_white</phrase> <phrase role="special">==</phrase> <phrase role="identifier">const_white</phrase><phrase role="special">);</phrase>
 </programlisting>
     <note>
       <para>
         <para>
           <code><phrase role="identifier">svg_color</phrase></code>'s constructor
- takes in three integer values. The SVG 1.1 standard allows any integer
- to represent an RGB value, with values less than 0 and greater than 255
- being rounded to their respective min and max.
+ takes in three integer values. The <ulink url="http://www.w3.org/TR/SVG11/types.html">SVG
+ 1.1 standard</ulink> allows any integer to represent an RGB value, with
+ values less than 0 and greater than 255 being constrained to their respective
+ min and max.
         </para>
       </para>
     </note>
- <anchor id="svg_plot.color.internals_and_rationale"/>
+ <anchor id="svg_plot.color.colors_internals_and_rationale"/>
     <bridgehead renderas="sect3">
- <link linkend="svg_plot.color.internals_and_rationale">Internals and Rationale</link>
+ <link linkend="svg_plot.color.colors_internals_and_rationale">Colors Internals
+ and Rationale</link>
     </bridgehead>
     <para>
       Constants are defined in an enum, <code><phrase role="identifier">svg_color_constant</phrase></code>,
- in alphabetical order. This facilitates quick lookup of their RGB values from
- an array. Anywhere that a <code><phrase role="identifier">svg_color</phrase></code>
+ in alphabetical order. <ulink url="..\..\..\..\boost\svg_plot\svg_color.hpp">color
+ constants</ulink>. This facilitates quick lookup of their RGB values from an
+ array. Anywhere that a <code><phrase role="identifier">svg_color</phrase></code>
       can be used, a <code><phrase role="identifier">svg_color_constant</phrase></code>
       can be used, as the conversion is implicit.
     </para>
     <para>
- All color information is stored in RGB format in a <code><phrase role="identifier">svg_color</phrase></code>
- struct. The rationale for storing information in RGB format is because it is
- precise, and is always representable the exact same way. Storing a floating
- point percentage introduces the possibility of rounding error, which I would
- like to avoid at all costs.
+ All color information is stored in RGB format as three 'unsigned char' in a
+ <code><phrase role="identifier">svg_color</phrase></code> struct. The rationale
+ for storing information in RGB format is because it is precise, and is always
+ representable the exact same way. Storing a floating-point percent or fraction
+ would introduce the possibility of undesirable rounding error.
     </para>
   </section>
- <section id="svg_plot.tutorial_code_1d_simple">
- <title><link linkend="svg_plot.tutorial_code_1d_simple"> Tutorial: 1D</link></title>
- <section id="svg_plot.tutorial_code_1d_simple.tutorial_code_1d_example">
- <title><link linkend="svg_plot.tutorial_code_1d_simple.tutorial_code_1d_example">
- Simple Example</link></title>
+ <section id="svg_plot.svg_simple_code_example">
+ <title><link linkend="svg_plot.svg_simple_code_example"> Simple Code Example</link></title>
+ <section id="svg_plot.svg_simple_code_example.tutorial_code_1d_simple">
+ <title><link linkend="svg_plot.svg_simple_code_example.tutorial_code_1d_simple">
+ Tutorial: 1D</link></title>
+ <section id="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.tutorial_code_1d_example">
+ <title><link linkend="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.tutorial_code_1d_example">
+ Simple 1D Example</link></title>
 <programlisting>
 <phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">boost</phrase><phrase role="special">/</phrase><phrase role="identifier">svg_plot</phrase><phrase role="special">/</phrase><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">hpp</phrase><phrase role="special">&gt;</phrase>
+<phrase role="keyword">using</phrase> <phrase role="keyword">namespace</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">svg</phrase><phrase role="special">;</phrase>
 <phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">vector</phrase><phrase role="special">&gt;</phrase>
-
 <phrase role="keyword">using</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">vector</phrase><phrase role="special">;</phrase>
-<phrase role="keyword">using</phrase> <phrase role="keyword">namespace</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">svg</phrase><phrase role="special">;</phrase>
 
 <phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>
- <phrase role="identifier">vector</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">dan_times</phrase><phrase role="special">;</phrase>
- <phrase role="identifier">vector</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">elaine_times</phrase><phrase role="special">;</phrase>
+ <phrase role="comment">// STL containers for the data to plot.
+</phrase> <phrase role="identifier">vector</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">dan_times</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">vector</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">elaine_times</phrase><phrase role="special">;</phrase>
+ <phrase role="comment">// Fill the two containers with some data:
+</phrase> <phrase role="identifier">dan_times</phrase><phrase role="special">.</phrase><phrase role="identifier">push_back</phrase><phrase role="special">(</phrase><phrase role="number">3.1</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">dan_times</phrase><phrase role="special">.</phrase><phrase role="identifier">push_back</phrase><phrase role="special">(</phrase><phrase role="number">4.2</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">elaine_times</phrase><phrase role="special">.</phrase><phrase role="identifier">push_back</phrase><phrase role="special">(</phrase><phrase role="number">2.1</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">elaine_times</phrase><phrase role="special">.</phrase><phrase role="identifier">push_back</phrase><phrase role="special">(</phrase><phrase role="number">7.8</phrase><phrase role="special">);</phrase>
 
- <phrase role="identifier">dan_times</phrase><phrase role="special">.</phrase><phrase role="identifier">push_back</phrase><phrase role="special">(</phrase><phrase role="number">3.1</phrase><phrase role="special">);</phrase>
- <phrase role="identifier">dan_times</phrase><phrase role="special">.</phrase><phrase role="identifier">push_back</phrase><phrase role="special">(</phrase><phrase role="number">4.2</phrase><phrase role="special">);</phrase>
- <phrase role="identifier">elaine_times</phrase><phrase role="special">.</phrase><phrase role="identifier">push_back</phrase><phrase role="special">(</phrase><phrase role="number">2.1</phrase><phrase role="special">);</phrase>
- <phrase role="identifier">elaine_times</phrase><phrase role="special">.</phrase><phrase role="identifier">push_back</phrase><phrase role="special">(</phrase><phrase role="number">7.8</phrase><phrase role="special">);</phrase>
-
- <phrase role="identifier">svg_1d_plot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase>
-
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Race Times&quot;</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">11</phrase><phrase role="special">);</phrase>
-
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">dan_times</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Dan&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">blue</phrase><phrase role="special">);</phrase>
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">elaine_times</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Elaine&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">orange</phrase><phrase role="special">);</phrase>
-
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase role="string">&quot;simple.svg&quot;</phrase><phrase role="special">);</phrase>
- <phrase role="keyword">return</phrase> <phrase role="number">0</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">svg_1d_plot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase> <phrase role="comment">// Construct a plot.
+</phrase>
+ <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Race Times&quot;</phrase><phrase role="special">)</phrase> <phrase role="comment">// Set title and legend.
+</phrase> <phrase role="special">.</phrase><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">11</phrase><phrase role="special">);</phrase>
+
+ <phrase role="comment">// Add the containers of data to the plot.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">dan_times</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Dan&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">blue</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">elaine_times</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Elaine&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">orange</phrase><phrase role="special">);</phrase>
+
+ <phrase role="comment">// And finally write the plot to a file.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase role="string">&quot;simple.svg&quot;</phrase><phrase role="special">);</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="number">0</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>
 </programlisting>
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/1d_simple.png"></imagedata></imageobject>
- <textobject>
- <phrase>1d_simple</phrase>
- </textobject>
- </inlinemediaobject>
- </para>
- <anchor id="svg_plot.tutorial_code_1d_simple.tutorial_code_1d_example.a_note_on_syntax"/>
- <bridgehead renderas="sect4">
- <link linkend="svg_plot.tutorial_code_1d_simple.tutorial_code_1d_example.a_note_on_syntax">A
- Note On Syntax</link>
- </bridgehead>
- <para>
- The syntax &quot;<code><phrase role="identifier">my_plot</phrase><phrase
- role="special">.</phrase><phrase role="identifier">title</phrase><phrase
- role="special">(</phrase><phrase role="string">&quot;Hello&quot;</phrase><phrase
- role="special">).</phrase><phrase role="identifier">legend_on</phrase><phrase
- role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)...</phrase></code>&quot;
- may appear unfamiliar. However, it works on the same principle that the assignment
- operator, addition operator, and output operator in the following code works:
- </para>
-
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/1d_simple.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>1d_simple</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.tutorial_code_1d_example.a_note_on_syntax"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.tutorial_code_1d_example.a_note_on_syntax">A
+ Note On Syntax</link>
+ </bridgehead>
+ <para>
+ The syntax &quot;<code><phrase role="identifier">my_plot</phrase><phrase
+ role="special">.</phrase><phrase role="identifier">title</phrase><phrase
+ role="special">(</phrase><phrase role="string">&quot;Hello&quot;</phrase><phrase
+ role="special">).</phrase><phrase role="identifier">legend_on</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)...</phrase></code>&quot;
+ may appear unfamiliar. However, it works on the same 'chaining' principle
+ that the assignment operator, addition operator, and output operator in
+ the following code works:
+ </para>
+
 <programlisting>
 <phrase role="identifier">a</phrase> <phrase role="special">=</phrase> <phrase role="identifier">b</phrase> <phrase role="special">=</phrase> <phrase role="identifier">c</phrase> <phrase role="special">=</phrase> <phrase role="identifier">d</phrase> <phrase role="special">=</phrase> <phrase role="number">3</phrase><phrase role="special">;</phrase>
 
-<phrase role="comment">//prints 12
-</phrase><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">cout</phrase> <phrase role="special">&lt;&lt;</phrase> <phrase role="identifier">a</phrase> <phrase role="special">+</phrase> <phrase role="identifier">b</phrase> <phrase role="special">+</phrase> <phrase role="identifier">c</phrase> <phrase role="special">+</phrase> <phrase role="identifier">d</phrase> <phrase role="special">&lt;&lt;</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">endl</phrase><phrase role="special">;</phrase>
-</programlisting>
- <para>
- Within all of the plot classes, &quot;chaining&quot; works the same way.
- The equivalent code for the example is as follows:
- </para>
-
+<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">cout</phrase> <phrase role="special">&lt;&lt;</phrase> <phrase role="identifier">a</phrase> <phrase role="special">+</phrase> <phrase role="identifier">b</phrase> <phrase role="special">+</phrase> <phrase role="identifier">c</phrase> <phrase role="special">+</phrase> <phrase role="identifier">d</phrase> <phrase role="special">&lt;&lt;</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">endl</phrase><phrase role="special">;</phrase> <phrase role="comment">// prints 12
+</phrase></programlisting>
+ <para>
+ Within all of the plot classes, 'chaining' works the same way. Equivalent
+ tradional code for the example is as follows:
+ </para>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Race Times&quot;</phrase><phrase role="special">);</phrase>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">);</phrase>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">11</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- In the long run, I think you will find that my choice helps organize the
- code a little better!
- </para>
- <anchor id="svg_plot.tutorial_code_1d_simple.tutorial_code_1d_example.basic_example_breakdown"/>
- <bridgehead renderas="sect4">
- <link linkend="svg_plot.tutorial_code_1d_simple.tutorial_code_1d_example.basic_example_breakdown">Basic
- Example Breakdown</link>
- </bridgehead>
- <para>
- Let's examine what this does.
- </para>
-
+ <para>
+ Chaining allows you to avoid repeatedly typing <code><phrase role="identifier">myplot</phrase><phrase
+ role="special">.</phrase></code> and to easily group related settings like
+ plot window, axes, ... together, and avoids relying on the order of arguments
+ in ordinary function calls. Order would clearly become impracticable with
+ dozens of arguments required to set all the myriad plot options.
+ </para>
+ <para>
+ In the long run, I think you will find that chaining helps organize your
+ code to read more clearly!
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.tutorial_code_1d_example.simple_1d_example_breakdown"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.tutorial_code_1d_example.simple_1d_example_breakdown">Simple
+ 1D Example Breakdown</link>
+ </bridgehead>
+ <para>
+ Let's examine what this does in detail.
+ </para>
+
 <programlisting>
 <phrase role="identifier">svg_1d_plot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase>
 </programlisting>
- <para>
- This initializes a new 1D plot. This also sets many of the default values.
- </para>
-
+ <para>
+ This constructor initializes a new 1D plot, called my_plot, and also sets
+ all the many default values.
+ </para>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Race Times&quot;</phrase><phrase role="special">)</phrase>
        <phrase role="special">.</phrase><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
        <phrase role="special">.</phrase><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">11</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- All of the setter methods are fairly self-explanatory. To walk through it
- once,
- </para>
- <itemizedlist>
- <listitem>
- the title, which will appear at the top of the graph, will say &quot;Race
- Times&quot;.
- </listitem>
- <listitem>
- <code><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">true</phrase><phrase role="special">)</phrase></code> means
- that the legend will show up.
- </listitem>
- <listitem>
- <code><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase
- role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">11</phrase><phrase
- role="special">)</phrase></code> means that the axis displayed will be
- between -1 and 11, as you can see in the above image.
- </listitem>
- </itemizedlist>
-
+ <para>
+ All of the setter methods (or member functions) are fairly self-explanatory.
+ To walk through it once,
+ </para>
+ <itemizedlist>
+ <listitem>
+ the title, which will appear at the top of the graph, will say &quot;Race
+ Times&quot;.
+ </listitem>
+ <listitem>
+ <code><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">true</phrase><phrase role="special">)</phrase></code>
+ means that the legend will display.
+ </listitem>
+ <listitem>
+ <code><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase
+ role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">11</phrase><phrase
+ role="special">)</phrase></code> means that the axis displayed will be
+ between -1 and 11, as you can see in the above image.
+ </listitem>
+ </itemizedlist>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Race times&quot;</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- This draws <code><phrase role="identifier">my_data</phrase></code> to <code><phrase
- role="identifier">my_plot</phrase></code>. As many containers as you want
- can be drawn to <code><phrase role="identifier">my_plot</phrase></code>.
- The name of the series is &quot;Race times&quot;, and that text will show
- up in the legend. These are the two required parameters for this function
- call. There are optional parameters, as seen in the section <ulink url="svg_plot/svg_1d_plot_interface.html"></ulink>
- </para>
- <para>
-
+ <para>
+ This draws <code><phrase role="identifier">my_data</phrase></code> onto
+ <code><phrase role="identifier">my_plot</phrase></code>. As many containers
+ as you want can be drawn to <code><phrase role="identifier">my_plot</phrase></code>.
+ The name of this data series is &quot;Race times&quot;, and this text will
+ show up in the legend (if my_plot.legend_on() == true). These are the two
+ required parameters for this plot function call. There are also optional
+ parameters, as seen in the section <ulink url=".\html\svg_plot\interface\svg_1d_plot_interface.html">svg_1d_plot_interface.html</ulink>
+ </para>
+ <para>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase role="string">&quot;simple.svg&quot;</phrase><phrase role="special">);</phrase>
 </programlisting>
- </para>
- <para>
- This writes our plot to the file &quot;simple.svg&quot;.
- </para>
- </section>
- <section id="svg_plot.tutorial_code_1d_simple.full_1d_layout">
- <title><link linkend="svg_plot.tutorial_code_1d_simple.full_1d_layout"> Tutorial:
- 1D Full Layout Example</link></title>
+ This writes our plot to the file &quot;simple.svg&quot;. SVG files can
+ be viewed with most browsers, or embedded into documents.
+ </para>
+ </section>
+ <section id="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.full_1d_layout">
+ <title><link linkend="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.full_1d_layout">
+ Tutorial: 1D Full Layout Example</link></title>
 <programlisting>
 <phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">boost</phrase><phrase role="special">/</phrase><phrase role="identifier">svg_plot</phrase><phrase role="special">/</phrase><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">hpp</phrase><phrase role="special">&gt;</phrase>
+<phrase role="keyword">using</phrase> <phrase role="keyword">namespace</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">svg</phrase><phrase role="special">;</phrase>
+<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">cmath</phrase><phrase role="special">&gt;</phrase> <phrase role="comment">// for sqrt
+</phrase>
 <phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">vector</phrase><phrase role="special">&gt;</phrase>
 <phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">deque</phrase><phrase role="special">&gt;</phrase>
-<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">cmath</phrase><phrase role="special">&gt;</phrase>
 <phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">boost</phrase><phrase role="special">/</phrase><phrase role="identifier">array</phrase><phrase role="special">.</phrase><phrase role="identifier">hpp</phrase><phrase role="special">&gt;</phrase>
 
-<phrase role="keyword">using</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">vector</phrase><phrase role="special">;</phrase>
+<phrase role="comment">// Three different STL-style containers:
+</phrase><phrase role="keyword">using</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">vector</phrase><phrase role="special">;</phrase>
 <phrase role="keyword">using</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">deque</phrase><phrase role="special">;</phrase>
-<phrase role="keyword">using</phrase> <phrase role="keyword">namespace</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">svg</phrase><phrase role="special">;</phrase>
+<phrase role="keyword">using</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">array</phrase><phrase role="special">;</phrase>
 
-<phrase role="keyword">double</phrase> <phrase role="identifier">f</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase role="special">)</phrase>
+<phrase role="comment">// Three sample functions:
+</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">f</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase role="special">)</phrase>
 <phrase role="special">{</phrase>
- <phrase role="keyword">return</phrase> <phrase role="identifier">sqrt</phrase><phrase role="special">(</phrase><phrase role="identifier">x</phrase><phrase role="special">);</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="identifier">sqrt</phrase><phrase role="special">(</phrase><phrase role="identifier">x</phrase><phrase role="special">);</phrase>
 <phrase role="special">}</phrase>
 
 <phrase role="keyword">double</phrase> <phrase role="identifier">g</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase role="special">)</phrase>
 <phrase role="special">{</phrase>
- <phrase role="keyword">return</phrase> <phrase role="special">-</phrase><phrase role="number">2</phrase> <phrase role="special">+</phrase> <phrase role="identifier">x</phrase><phrase role="special">*</phrase><phrase role="identifier">x</phrase><phrase role="special">;</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="special">-</phrase><phrase role="number">2</phrase> <phrase role="special">+</phrase> <phrase role="identifier">x</phrase><phrase role="special">*</phrase><phrase role="identifier">x</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>
 
 <phrase role="keyword">double</phrase> <phrase role="identifier">h</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase role="special">)</phrase>
 <phrase role="special">{</phrase>
- <phrase role="keyword">return</phrase> <phrase role="special">-</phrase><phrase role="number">1</phrase> <phrase role="special">+</phrase> <phrase role="number">2</phrase><phrase role="special">*</phrase><phrase role="identifier">x</phrase><phrase role="special">;</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="special">-</phrase><phrase role="number">1</phrase> <phrase role="special">+</phrase> <phrase role="number">2</phrase><phrase role="special">*</phrase><phrase role="identifier">x</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>
 
 <phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>
- <phrase role="identifier">vector</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">data1</phrase><phrase role="special">;</phrase>
- <phrase role="identifier">deque</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">data2</phrase><phrase role="special">;</phrase>
- <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">array</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="number">10</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">data3</phrase><phrase role="special">;</phrase>
-
- <phrase role="keyword">int</phrase> <phrase role="identifier">j</phrase><phrase role="special">=</phrase><phrase role="number">0</phrase><phrase role="special">;</phrase>
- <phrase role="keyword">for</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">i</phrase><phrase role="special">=</phrase><phrase role="number">0</phrase><phrase role="special">;</phrase> <phrase role="identifier">i</phrase><phrase role="special">&lt;</phrase><phrase role="number">9.5</phrase><phrase role="special">;</phrase> <phrase role="identifier">i</phrase><phrase role="special">+=</phrase><phrase role="number">1.</phrase><phrase role="special">)</phrase>
- <phrase role="special">{</phrase>
- <phrase role="identifier">data1</phrase><phrase role="special">.</phrase><phrase role="identifier">push_back</phrase><phrase role="special">(</phrase><phrase role="identifier">f</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">));</phrase>
- <phrase role="identifier">data2</phrase><phrase role="special">.</phrase><phrase role="identifier">push_front</phrase><phrase role="special">(</phrase><phrase role="identifier">g</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">));</phrase>
- <phrase role="identifier">data3</phrase><phrase role="special">[</phrase><phrase role="identifier">j</phrase><phrase role="special">++]</phrase> <phrase role="special">=</phrase> <phrase role="identifier">h</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">);</phrase>
- <phrase role="special">}</phrase>
-
- <phrase role="identifier">svg_1d_plot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase>
-
- <phrase role="comment">// Size/scale settings.
-</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">image_size</phrase><phrase role="special">(</phrase><phrase role="number">500</phrase><phrase role="special">,</phrase> <phrase role="number">350</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase role="number">3</phrase><phrase role="special">,</phrase> <phrase role="number">10</phrase><phrase role="special">);</phrase>
-
- <phrase role="comment">// Text settings.
-</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Oh My!&quot;</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">title_font_size</phrase><phrase role="special">(</phrase><phrase role="number">29</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_label</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Time in Months&quot;</phrase><phrase role="special">);</phrase>
-
- <phrase role="comment">// Commands.
-</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">plot_window_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_label_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_major_labels_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">);</phrase>
-
- <phrase role="comment">// color settings
-</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">67</phrase><phrase role="special">,</phrase> <phrase role="number">111</phrase><phrase role="special">,</phrase> <phrase role="number">69</phrase><phrase role="special">))</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">legend_background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">207</phrase><phrase role="special">,</phrase> <phrase role="number">202</phrase><phrase role="special">,</phrase><phrase role="number">167</phrase><phrase role="special">))</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">legend_border_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">102</phrase><phrase role="special">,</phrase> <phrase role="number">102</phrase><phrase role="special">,</phrase> <phrase role="number">84</phrase><phrase role="special">))</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">plot_background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">136</phrase><phrase role="special">,</phrase> <phrase role="number">188</phrase><phrase role="special">,</phrase> <phrase role="number">126</phrase><phrase role="special">))</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">title_color</phrase><phrase role="special">(</phrase><phrase role="identifier">white</phrase><phrase role="special">);</phrase>
-
- <phrase role="comment">//axis settings
-</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">x_major_interval</phrase><phrase role="special">(</phrase><phrase role="number">2</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_major_tick_length</phrase><phrase role="special">(</phrase><phrase role="number">14</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_major_tick_width</phrase><phrase role="special">(</phrase><phrase role="number">1</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_minor_tick_length</phrase><phrase role="special">(</phrase><phrase role="number">7</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_minor_tick_width</phrase><phrase role="special">(</phrase><phrase role="number">1</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase role="number">3</phrase><phrase role="special">);</phrase>
-
- <phrase role="comment">//legend settings
-</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">legend_title_font_size</phrase><phrase role="special">(</phrase><phrase role="number">15</phrase><phrase role="special">);</phrase>
-
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data1</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">blue</phrase><phrase role="special">);</phrase>
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data2</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Tigers&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">orange</phrase><phrase role="special">);</phrase>
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data3</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Bears&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">red</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">vector</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">data1</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">deque</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">data2</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">array</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="number">10</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">data3</phrase><phrase role="special">;</phrase>
+ <phrase role="comment">// Fill the containers with some data using the functions:
+</phrase> <phrase role="keyword">int</phrase> <phrase role="identifier">j</phrase><phrase role="special">=</phrase><phrase role="number">0</phrase><phrase role="special">;</phrase>
+ <phrase role="keyword">for</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">i</phrase><phrase role="special">=</phrase><phrase role="number">0</phrase><phrase role="special">;</phrase> <phrase role="identifier">i</phrase><phrase role="special">&lt;</phrase><phrase role="number">9.5</phrase><phrase role="special">;</phrase> <phrase role="identifier">i</phrase><phrase role="special">+=</phrase><phrase role="number">1.</phrase><phrase role="special">)</phrase>
+ <phrase role="special">{</phrase>
+ <phrase role="identifier">data1</phrase><phrase role="special">.</phrase><phrase role="identifier">push_back</phrase><phrase role="special">(</phrase><phrase role="identifier">f</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">));</phrase>
+ <phrase role="identifier">data2</phrase><phrase role="special">.</phrase><phrase role="identifier">push_front</phrase><phrase role="special">(</phrase><phrase role="identifier">g</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">));</phrase>
+ <phrase role="identifier">data3</phrase><phrase role="special">[</phrase><phrase role="identifier">j</phrase><phrase role="special">++]</phrase> <phrase role="special">=</phrase> <phrase role="identifier">h</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">);</phrase>
+ <phrase role="special">}</phrase>
+
+ <phrase role="identifier">svg_1d_plot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase> <phrase role="comment">// Construct my_plot.
+</phrase>
+ <phrase role="comment">// Set many plot options,
+</phrase> <phrase role="comment">// using chaining to group similar aspects together.
+</phrase> <phrase role="comment">// Size/scale settings.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">image_size</phrase><phrase role="special">(</phrase><phrase role="number">500</phrase><phrase role="special">,</phrase> <phrase role="number">350</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase role="number">3</phrase><phrase role="special">,</phrase> <phrase role="number">10</phrase><phrase role="special">);</phrase>
+
+ <phrase role="comment">// Text settings.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Oh My!&quot;</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">title_font_size</phrase><phrase role="special">(</phrase><phrase role="number">29</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_label</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Time in Months&quot;</phrase><phrase role="special">);</phrase>
+
+ <phrase role="comment">// Commands.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">plot_window_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_label_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_major_labels_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">);</phrase>
+
+ <phrase role="comment">// Color settings.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">67</phrase><phrase role="special">,</phrase> <phrase role="number">111</phrase><phrase role="special">,</phrase> <phrase role="number">69</phrase><phrase role="special">))</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">legend_background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">207</phrase><phrase role="special">,</phrase> <phrase role="number">202</phrase><phrase role="special">,</phrase><phrase role="number">167</phrase><phrase role="special">))</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">legend_border_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">102</phrase><phrase role="special">,</phrase> <phrase role="number">102</phrase><phrase role="special">,</phrase> <phrase role="number">84</phrase><phrase role="special">))</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">plot_background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">136</phrase><phrase role="special">,</phrase> <phrase role="number">188</phrase><phrase role="special">,</phrase> <phrase role="number">126</phrase><phrase role="special">))</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">title_color</phrase><phrase role="special">(</phrase><phrase role="identifier">white</phrase><phrase role="special">);</phrase>
+
+ <phrase role="comment">// Axis settings.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">x_major_interval</phrase><phrase role="special">(</phrase><phrase role="number">2</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_major_tick_length</phrase><phrase role="special">(</phrase><phrase role="number">14</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_major_tick_width</phrase><phrase role="special">(</phrase><phrase role="number">1</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_minor_tick_length</phrase><phrase role="special">(</phrase><phrase role="number">7</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_minor_tick_width</phrase><phrase role="special">(</phrase><phrase role="number">1</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase role="number">3</phrase><phrase role="special">);</phrase>
+
+ <phrase role="comment">// Legend settings.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">legend_title_font_size</phrase><phrase role="special">(</phrase><phrase role="number">15</phrase><phrase role="special">);</phrase>
+
+ <phrase role="comment">// Put the three containers of data onto the plot.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data1</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">blue</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data2</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Tigers&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">orange</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data3</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Bears&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">red</phrase><phrase role="special">);</phrase>
 
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase role="string">&quot;1d_complex.svg&quot;</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase role="string">&quot;1d_complex.svg&quot;</phrase><phrase role="special">);</phrase>
 
- <phrase role="keyword">return</phrase> <phrase role="number">0</phrase><phrase role="special">;</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="number">0</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>
 </programlisting>
- <para>
- This produces the following output:
- </para>
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/1d_complex.png"></imagedata></imageobject>
- <textobject>
- <phrase>1d_complex</phrase>
- </textobject>
- </inlinemediaobject>
- </para>
- <para>
- A little bit of color customization goes a long way!
- </para>
- </section>
- <section id="svg_plot.tutorial_code_1d_simple.1d_special">
- <title><link linkend="svg_plot.tutorial_code_1d_simple.1d_special"> Tutorial:
- 1D Special Features</link></title> <anchor id="svg_plot.tutorial_code_1d_simple.1d_special.x_axis_grid_lines"/>
- <bridgehead renderas="sect4">
- <link linkend="svg_plot.tutorial_code_1d_simple.1d_special.x_axis_grid_lines">X
- Axis Grid Lines</link>
- </bridgehead>
- <para>
- If you would like grid lines that go across the graph, you can make the following
- call to <code><phrase role="identifier">svg_1d_plot</phrase></code>:
- </para>
-
+ <para>
+ This produces the following output:
+ </para>
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/1d_complex.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>1d_complex</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
+ <para>
+ A little bit of color customization goes a very long way!
+ </para>
+ </section>
+ <section id="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.1d_special">
+ <title><link linkend="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.1d_special">
+ Tutorial: 1D Special Features</link></title> <anchor id="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.1d_special.x_axis_grid_lines"/>
+ <bridgehead renderas="sect5">
+ <link linkend="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.1d_special.x_axis_grid_lines">X-Axis
+ Grid Lines</link>
+ </bridgehead>
+ <para>
+ If you would like vertical grid lines that go on the graph, you can make
+ the following call to <code><phrase role="identifier">svg_1d_plot</phrase></code>:
+ </para>
+
 <programlisting>
-<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">x_major_grid_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
+<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">x_major_grid_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
        <phrase role="special">.</phrase><phrase role="identifier">x_minor_grid_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- To style it, you would use the following calls:
- </para>
-
+ <para>
+ To color style it, you might add the following calls:
+ </para>
+
 <programlisting>
-<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">x_major_grid_color</phrase><phrase role="special">(</phrase><phrase role="identifier">lightgray</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_minor_grid_color</phrase><phrase role="special">(</phrase><phrase role="identifier">whitesmoke</phrase><phrase role="special">);</phrase>
-</programlisting>
- <para>
- This will produce something like the following image:
- </para>
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/1d_x_grid.png"></imagedata></imageobject>
- <textobject>
- <phrase>1d_x_grid</phrase>
- </textobject>
- </inlinemediaobject>
- </para>
- <anchor id="svg_plot.tutorial_code_1d_simple.1d_special.x_axis_external_style"/>
- <bridgehead renderas="sect4">
- <link linkend="svg_plot.tutorial_code_1d_simple.1d_special.x_axis_external_style">X
- Axis External Style</link>
- </bridgehead>
- <para>
- For an alternate way to display a regular axis, you can use an external style:
- </para>
-
+<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">x_major_grid_color</phrase><phrase role="special">(</phrase><phrase role="identifier">lightgray</phrase><phrase role="special">)</phrase> <phrase role="comment">// Darker color for major grid.
+</phrase> <phrase role="special">.</phrase><phrase role="identifier">x_minor_grid_color</phrase><phrase role="special">(</phrase><phrase role="identifier">whitesmoke</phrase><phrase role="special">);</phrase> <phrase role="comment">// Lighter color for minor grid.
+</phrase></programlisting>
+ <para>
+ This will produce the following image:
+ </para>
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/1d_x_grid.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>1d_x_grid</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.1d_special.x_axis_external_style"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.tutorial_code_1d_simple.1d_special.x_axis_external_style">X-Axis
+ External Style</link>
+ </bridgehead>
+ <para>
+ TODO this has ben changed to x_up_ticks and x_down_ticks and y_left_ticks
+ and y_right_ticks.
+ </para>
+ <para>
+ By default the 'ticks' face into the plot area. Alternatively, you can
+ use an 'external' style, so that the ticks face out from the X- and/or
+ Y-axes.
+ </para>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">x_external_style_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">);</phrase>
+<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">y_external_style_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- The axis is still styled using the normal methods. The following is an example
- of the style that you can produce with this.
- </para>
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/1d_x_external.png"></imagedata></imageobject>
- <textobject>
- <phrase>1d_x_external</phrase>
- </textobject>
- </inlinemediaobject>
- </para>
- <important>
         <para>
+ The axis is still otherwise styled using the normal methods. The following
+ is an example of the style that you can produce with this:
+ </para>
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/1d_x_external.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>1d_x_external</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
+ <important>
           <para>
- If the axis is turned off, <code><phrase role="identifier">x_external_style_on</phrase><phrase
- role="special">(</phrase><phrase role="keyword">true</phrase><phrase
- role="special">)</phrase></code> will not turn the axis back on. To do
- that, you must call <code><phrase role="identifier">axis_on</phrase><phrase
- role="special">(</phrase><phrase role="keyword">true</phrase><phrase
- role="special">)</phrase></code>
+ <para>
+ If the axis is turned off, <code><phrase role="identifier">x_external_style_on</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">true</phrase><phrase
+ role="special">)</phrase></code> will not turn the axis back on. To
+ do that, you must call <code><phrase role="identifier">axis_on</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">true</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
           </para>
- </para>
- </important>
+ </important>
+ </section>
     </section>
- </section>
- <section id="svg_plot.tutorial_2d_code_simple">
- <title><link linkend="svg_plot.tutorial_2d_code_simple"> Tutorial: 2D</link></title>
- <section id="svg_plot.tutorial_2d_code_simple.2d_simple_code_example">
- <title><link linkend="svg_plot.tutorial_2d_code_simple.2d_simple_code_example">
- Simple Code Example</link></title>
+ <section id="svg_plot.svg_simple_code_example.tutorial_2d_code_simple">
+ <title><link linkend="svg_plot.svg_simple_code_example.tutorial_2d_code_simple">
+ Tutorial: 2D</link></title>
+ <section id="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_simple_code_example">
+ <title><link linkend="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_simple_code_example">
+ Simple Code Example</link></title>
 <programlisting>
 <phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">boost</phrase><phrase role="special">/</phrase><phrase role="identifier">svg_plot</phrase><phrase role="special">/</phrase><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">hpp</phrase><phrase role="special">&gt;</phrase>
-<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">vector</phrase><phrase role="special">&gt;</phrase>
-
-<phrase role="keyword">using</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">multimap</phrase><phrase role="special">;</phrase>
 <phrase role="keyword">using</phrase> <phrase role="keyword">namespace</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">svg</phrase><phrase role="special">;</phrase>
 
+<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">map</phrase><phrase role="special">&gt;</phrase>
+<phrase role="keyword">using</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">multimap</phrase><phrase role="special">;</phrase> <phrase role="comment">// A more complicated STL container.
+</phrase>
 <phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>
- <phrase role="identifier">multimap</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">map1</phrase><phrase role="special">;</phrase>
- <phrase role="identifier">multimap</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">map2</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">multimap</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">map1</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">multimap</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">map2</phrase><phrase role="special">;</phrase>
 
- <phrase role="comment">// This is random data used purely for example purposes.
-</phrase> <phrase role="identifier">map1</phrase><phrase role="special">[</phrase><phrase role="number">1.</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="number">3.2</phrase><phrase role="special">;</phrase>
- <phrase role="identifier">map1</phrase><phrase role="special">[</phrase><phrase role="number">1.</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="number">5.4</phrase><phrase role="special">;</phrase>
- <phrase role="identifier">map1</phrase><phrase role="special">[</phrase><phrase role="number">7.3</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="number">9.1</phrase><phrase role="special">;</phrase>
+ <phrase role="comment">// This is random data used purely for example purposes.
+</phrase> <phrase role="identifier">map1</phrase><phrase role="special">[</phrase><phrase role="number">1.</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="number">3.2</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">map1</phrase><phrase role="special">[</phrase><phrase role="number">1.</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="number">5.4</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">map1</phrase><phrase role="special">[</phrase><phrase role="number">7.3</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="number">9.1</phrase><phrase role="special">;</phrase>
 
- <phrase role="identifier">map2</phrase><phrase role="special">[</phrase><phrase role="number">3.1</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="number">6.1</phrase><phrase role="special">;</phrase>
- <phrase role="identifier">map2</phrase><phrase role="special">[</phrase><phrase role="number">5.4</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="number">7.</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">map2</phrase><phrase role="special">[</phrase><phrase role="number">3.1</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="number">6.1</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">map2</phrase><phrase role="special">[</phrase><phrase role="number">5.4</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="number">7.</phrase><phrase role="special">;</phrase>
 
- <phrase role="identifier">svg_1d_plot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">svg_1d_plot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase>
 
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Race Times&quot;</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">11</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">background_border_color</phrase><phrase role="special">(</phrase><phrase role="identifier">black</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Race Times&quot;</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">11</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">background_border_color</phrase><phrase role="special">(</phrase><phrase role="identifier">black</phrase><phrase role="special">);</phrase>
 
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">map1</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Series 1&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">blue</phrase><phrase role="special">);</phrase>
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">map2</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Series 2&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">orange</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">map1</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Series 1&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">blue</phrase><phrase role="special">);</phrase> <phrase role="comment">// Data point marker color is blue.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">map2</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Series 2&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">orange</phrase><phrase role="special">);</phrase>
 
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase role="string">&quot;simple_2d.svg&quot;</phrase><phrase role="special">);</phrase>
- <phrase role="keyword">return</phrase> <phrase role="number">0</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase role="string">&quot;simple_2d.svg&quot;</phrase><phrase role="special">);</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="number">0</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>
 </programlisting>
- <anchor id="svg_plot.tutorial_2d_code_simple.2d_simple_code_example.resulting_image"/>
- <bridgehead renderas="sect4">
- <link linkend="svg_plot.tutorial_2d_code_simple.2d_simple_code_example.resulting_image">Resulting
- Image</link>
- </bridgehead>
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/2d_simple.png"></imagedata></imageobject>
- <textobject>
- <phrase>2d_simple</phrase>
- </textobject>
- </inlinemediaobject>
- </para>
- <anchor id="svg_plot.tutorial_2d_code_simple.2d_simple_code_example.basic_example_breakdown"/>
- <bridgehead renderas="sect4">
- <link linkend="svg_plot.tutorial_2d_code_simple.2d_simple_code_example.basic_example_breakdown">Basic
- Example Breakdown</link>
- </bridgehead>
- <para>
- Let's examine what this does.
- </para>
-
+ <anchor id="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_simple_code_example.resulting_simple_2d_example_image"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_simple_code_example.resulting_simple_2d_example_image">Resulting
+ Simple_2D Example Image</link>
+ </bridgehead>
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/2d_simple.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>2d_simple</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_simple_code_example.simple_2d_example_breakdown"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_simple_code_example.simple_2d_example_breakdown">Simple_2D
+ Example Breakdown</link>
+ </bridgehead>
+ <para>
+ Let's examine what this does.
+ </para>
+
 <programlisting>
 <phrase role="identifier">svg_2d_plot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase>
 </programlisting>
- <para>
- This initializes a new 2D plot. This also sets many of the default values.
- </para>
-
+ <para>
+ This constructor initializes a new 2D plot. This also sets the many default
+ values.
+ </para>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Race Times&quot;</phrase><phrase role="special">)</phrase>
        <phrase role="special">.</phrase><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
        <phrase role="special">.</phrase><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">11</phrase><phrase role="special">)</phrase>
        <phrase role="special">.</phrase><phrase role="identifier">background_border_color</phrase><phrase role="special">(</phrase><phrase role="identifier">black</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- All of the setter methods are fairly self-explanatory. To walk through it
- once,
- </para>
- <itemizedlist>
- <listitem>
- the title, which will appear at the top of the graph, will say &quot;Race
- Times&quot;.
- </listitem>
- <listitem>
- <code><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">true</phrase><phrase role="special">)</phrase></code> means
- that the legend will show up.
- </listitem>
- <listitem>
- <code><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase
- role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">11</phrase><phrase
- role="special">)</phrase></code> means that the axis displayed will be
- between -1 and 11, as you can see in the above images.
- </listitem>
- <listitem>
- <code><phrase role="identifier">background_border_color</phrase><phrase
- role="special">(</phrase><phrase role="identifier">black</phrase><phrase
- role="special">)</phrase></code> sets the border around the image to <code><phrase
- role="identifier">black</phrase></code>. Ordinarily it is left to be the
- color of the background.
- </listitem>
- </itemizedlist>
-
+ <para>
+ All of the setter methods are fairly self-explanatory. To walk through
+ it once,
+ </para>
+ <itemizedlist>
+ <listitem>
+ The title, which will appear at the top of the graph, will say &quot;Race
+ Times&quot;.
+ </listitem>
+ <listitem>
+ <code><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">true</phrase><phrase role="special">)</phrase></code>
+ means that the legend will show up.
+ </listitem>
+ <listitem>
+ <code><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase
+ role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">11</phrase><phrase
+ role="special">)</phrase></code> means that the axis displayed will be
+ between -1 and 11, as you can see in the above images.
+ </listitem>
+ <listitem>
+ <code><phrase role="identifier">background_border_color</phrase><phrase
+ role="special">(</phrase><phrase role="identifier">black</phrase><phrase
+ role="special">)</phrase></code> sets the border around the image to
+ <code><phrase role="identifier">black</phrase></code>. Ordinarily it
+ is left to be the color of the background (and so no border of plot area
+ will be visible).
+ </listitem>
+ </itemizedlist>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">map1</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Series 1&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">blue</phrase><phrase role="special">);</phrase>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">map2</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Series 2&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">orange</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- This draws <code><phrase role="identifier">map1</phrase></code> and <code><phrase
- role="identifier">map2</phrase></code> to <code><phrase role="identifier">my_plot</phrase></code>.
- As many containers as you want can be drawn to <code><phrase role="identifier">my_plot</phrase></code>.
- After a certain point, however, I recommend just creating another plot! The
- name of the series is <code><phrase role="string">&quot;Race times&quot;</phrase></code>,
- and that text will show up in the legend. These are the two required parameters
- for this function call. There are optional parameters, as seen in the section
- <ulink url="plot_function">Getting More Out of the <code><phrase role="identifier">plot</phrase><phrase
- role="special">()</phrase></code> Function</ulink>
- </para>
-
+ <para>
+ This draws <code><phrase role="identifier">map1</phrase></code> and <code><phrase
+ role="identifier">map2</phrase></code> to <code><phrase role="identifier">my_plot</phrase></code>.
+ As many containers as you want can be drawn to <code><phrase role="identifier">my_plot</phrase></code>.
+ Evntually the plot will become cluttered and confusing, when I recommend
+ just creating another plot!
+ </para>
+ <para>
+ The name of the series is <code><phrase role="string">&quot;Race times&quot;</phrase></code>,
+ and that text will show in the legend. These are the two required parameters
+ for this function call. There are many optional parameters, as seen in
+ the section <ulink url="plot_function">Getting More Out of the <code><phrase
+ role="identifier">plot</phrase><phrase role="special">()</phrase></code>
+ Function</ulink>
+ </para>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase role="string">&quot;simple_2d.svg&quot;</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- This writes our plot to the file &quot;simple_2d.svg&quot;.
- </para>
- </section>
- <section id="svg_plot.tutorial_2d_code_simple.full_2d_layout">
- <title><link linkend="svg_plot.tutorial_2d_code_simple.full_2d_layout"> Tutorial:
- Full Layout Example</link></title>
+ <para>
+ This writes plot <code><phrase role="identifier">my_plot</phrase></code>
+ to the file &quot;simple_2d.svg&quot;.
+ </para>
+ </section>
+ <section id="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.full_2d_layout">
+ <title><link linkend="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.full_2d_layout">
+ Tutorial: Fuller Layout Example</link></title>
 <programlisting>
 <phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">boost</phrase><phrase role="special">/</phrase><phrase role="identifier">svg_plot</phrase><phrase role="special">/</phrase><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">hpp</phrase><phrase role="special">&gt;</phrase>
+<phrase role="keyword">using</phrase> <phrase role="keyword">namespace</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">svg</phrase><phrase role="special">;</phrase>
 <phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">map</phrase><phrase role="special">&gt;</phrase>
-<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">cmath</phrase><phrase role="special">&gt;</phrase>
-
 <phrase role="keyword">using</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">multimap</phrase><phrase role="special">;</phrase>
-<phrase role="keyword">using</phrase> <phrase role="keyword">namespace</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">svg</phrase><phrase role="special">;</phrase>
-
-<phrase role="keyword">double</phrase> <phrase role="identifier">f</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase role="special">)</phrase>
+<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">cmath</phrase><phrase role="special">&gt;</phrase> <phrase role="comment">// for sqrt
+</phrase>
+<phrase role="comment">// Some example functions:
+</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">f</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase role="special">)</phrase>
 <phrase role="special">{</phrase>
- <phrase role="keyword">return</phrase> <phrase role="identifier">sqrt</phrase><phrase role="special">(</phrase><phrase role="identifier">x</phrase><phrase role="special">);</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="identifier">sqrt</phrase><phrase role="special">(</phrase><phrase role="identifier">x</phrase><phrase role="special">);</phrase>
 <phrase role="special">}</phrase>
 
 <phrase role="keyword">double</phrase> <phrase role="identifier">g</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase role="special">)</phrase>
 <phrase role="special">{</phrase>
- <phrase role="keyword">return</phrase> <phrase role="special">-</phrase><phrase role="number">2</phrase> <phrase role="special">+</phrase> <phrase role="identifier">x</phrase><phrase role="special">*</phrase><phrase role="identifier">x</phrase><phrase role="special">;</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="special">-</phrase><phrase role="number">2</phrase> <phrase role="special">+</phrase> <phrase role="identifier">x</phrase><phrase role="special">*</phrase><phrase role="identifier">x</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>
 
 <phrase role="keyword">double</phrase> <phrase role="identifier">h</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase role="special">)</phrase>
 <phrase role="special">{</phrase>
- <phrase role="keyword">return</phrase> <phrase role="special">-</phrase><phrase role="number">1</phrase> <phrase role="special">+</phrase> <phrase role="number">2</phrase><phrase role="special">*</phrase><phrase role="identifier">x</phrase><phrase role="special">;</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="special">-</phrase><phrase role="number">1</phrase> <phrase role="special">+</phrase> <phrase role="number">2</phrase><phrase role="special">*</phrase><phrase role="identifier">x</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>
 
 <phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>
- <phrase role="identifier">multimap</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">data1</phrase><phrase role="special">,</phrase> <phrase role="identifier">data2</phrase><phrase role="special">,</phrase> <phrase role="identifier">data3</phrase><phrase role="special">;</phrase>
-
- <phrase role="keyword">for</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">i</phrase><phrase role="special">=</phrase><phrase role="number">0</phrase><phrase role="special">;</phrase> <phrase role="identifier">i</phrase><phrase role="special">&lt;=</phrase><phrase role="number">10.</phrase><phrase role="special">;</phrase> <phrase role="identifier">i</phrase><phrase role="special">+=</phrase><phrase role="number">1.</phrase><phrase role="special">)</phrase>
- <phrase role="special">{</phrase>
- <phrase role="identifier">data1</phrase><phrase role="special">[</phrase><phrase role="identifier">i</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="identifier">f</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">);</phrase>
- <phrase role="identifier">data2</phrase><phrase role="special">[</phrase><phrase role="identifier">i</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="identifier">g</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">);</phrase>
- <phrase role="identifier">data3</phrase><phrase role="special">[</phrase><phrase role="identifier">i</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="identifier">h</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">);</phrase>
- <phrase role="special">}</phrase>
-
- <phrase role="identifier">svg_2d_plot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase>
-
- <phrase role="comment">// Size/scale settings.
-</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">image_size</phrase><phrase role="special">(</phrase><phrase role="number">700</phrase><phrase role="special">,</phrase> <phrase role="number">500</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">10</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">y_range</phrase><phrase role="special">(-</phrase><phrase role="number">5</phrase><phrase role="special">,</phrase> <phrase role="number">100</phrase><phrase role="special">)</phrase>
-
- <phrase role="comment">// Text settings.
-</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Plot of Mathematical Functions&quot;</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">title_font_size</phrase><phrase role="special">(</phrase><phrase role="number">29</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_label</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Time in Months&quot;</phrase><phrase role="special">);</phrase>
-
- <phrase role="comment">// Commands.
-</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">plot_window_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_label_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_major_labels_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">);</phrase>
-
- <phrase role="comment">// Color settings.
-</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">67</phrase><phrase role="special">,</phrase> <phrase role="number">111</phrase><phrase role="special">,</phrase> <phrase role="number">69</phrase><phrase role="special">))</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">legend_background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">207</phrase><phrase role="special">,</phrase> <phrase role="number">202</phrase><phrase role="special">,</phrase><phrase role="number">167</phrase><phrase role="special">))</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">legend_border_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">102</phrase><phrase role="special">,</phrase> <phrase role="number">102</phrase><phrase role="special">,</phrase> <phrase role="number">84</phrase><phrase role="special">))</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">plot_background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">136</phrase><phrase role="special">,</phrase> <phrase role="number">188</phrase><phrase role="special">,</phrase> <phrase role="number">126</phrase><phrase role="special">))</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">title_color</phrase><phrase role="special">(</phrase><phrase role="identifier">white</phrase><phrase role="special">);</phrase>
-
- <phrase role="comment">//X axis settings.
-</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">x_major_interval</phrase><phrase role="special">(</phrase><phrase role="number">2</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_major_tick_length</phrase><phrase role="special">(</phrase><phrase role="number">14</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_major_tick_width</phrase><phrase role="special">(</phrase><phrase role="number">1</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_minor_tick_length</phrase><phrase role="special">(</phrase><phrase role="number">7</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_minor_tick_width</phrase><phrase role="special">(</phrase><phrase role="number">1</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase role="number">3</phrase><phrase role="special">)</phrase>
-
- <phrase role="comment">//Y axis settings.
-</phrase> <phrase role="special">.</phrase><phrase role="identifier">y_major_tick</phrase><phrase role="special">(</phrase><phrase role="number">10</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">y_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase role="number">2</phrase><phrase role="special">);</phrase>
-
- <phrase role="comment">//legend settings
-</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">legend_title_font_size</phrase><phrase role="special">(</phrase><phrase role="number">15</phrase><phrase role="special">);</phrase>
-
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data1</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Sqrt(x)&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">blue</phrase><phrase role="special">,</phrase>
- <phrase role="identifier">_point_style</phrase> <phrase role="special">=</phrase> <phrase role="identifier">none</phrase><phrase role="special">,</phrase>
- <phrase role="identifier">_show_line</phrase> <phrase role="special">=</phrase> <phrase role="keyword">true</phrase><phrase role="special">);</phrase>
-
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data2</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;-2 + x^2&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">orange</phrase><phrase role="special">,</phrase>
- <phrase role="identifier">_show_line</phrase> <phrase role="special">=</phrase> <phrase role="keyword">true</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">multimap</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">data1</phrase><phrase role="special">,</phrase> <phrase role="identifier">data2</phrase><phrase role="special">,</phrase> <phrase role="identifier">data3</phrase><phrase role="special">;</phrase>
+
+ <phrase role="keyword">for</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">i</phrase><phrase role="special">=</phrase><phrase role="number">0</phrase><phrase role="special">;</phrase> <phrase role="identifier">i</phrase><phrase role="special">&lt;=</phrase><phrase role="number">10.</phrase><phrase role="special">;</phrase> <phrase role="identifier">i</phrase><phrase role="special">+=</phrase><phrase role="number">1.</phrase><phrase role="special">)</phrase>
+ <phrase role="special">{</phrase>
+ <phrase role="identifier">data1</phrase><phrase role="special">[</phrase><phrase role="identifier">i</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="identifier">f</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">data2</phrase><phrase role="special">[</phrase><phrase role="identifier">i</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="identifier">g</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">data3</phrase><phrase role="special">[</phrase><phrase role="identifier">i</phrase><phrase role="special">]</phrase> <phrase role="special">=</phrase> <phrase role="identifier">h</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">);</phrase>
+ <phrase role="special">}</phrase>
+
+ <phrase role="identifier">svg_2d_plot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase>
+
+ <phrase role="comment">// Size/scale settings.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">image_size</phrase><phrase role="special">(</phrase><phrase role="number">700</phrase><phrase role="special">,</phrase> <phrase role="number">500</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_range</phrase><phrase role="special">(-</phrase><phrase role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">10</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">y_range</phrase><phrase role="special">(-</phrase><phrase role="number">5</phrase><phrase role="special">,</phrase> <phrase role="number">100</phrase><phrase role="special">)</phrase>
+
+ <phrase role="comment">// Text settings.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Plot of Mathematical Functions&quot;</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">title_font_size</phrase><phrase role="special">(</phrase><phrase role="number">29</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_label</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Time in Months&quot;</phrase><phrase role="special">);</phrase>
+
+ <phrase role="comment">// Commands.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">plot_window_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_label_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_major_labels_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">);</phrase>
+
+ <phrase role="comment">// Color settings.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">67</phrase><phrase role="special">,</phrase> <phrase role="number">111</phrase><phrase role="special">,</phrase> <phrase role="number">69</phrase><phrase role="special">))</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">legend_background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">207</phrase><phrase role="special">,</phrase> <phrase role="number">202</phrase><phrase role="special">,</phrase><phrase role="number">167</phrase><phrase role="special">))</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">legend_border_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">102</phrase><phrase role="special">,</phrase> <phrase role="number">102</phrase><phrase role="special">,</phrase> <phrase role="number">84</phrase><phrase role="special">))</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">plot_background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">136</phrase><phrase role="special">,</phrase> <phrase role="number">188</phrase><phrase role="special">,</phrase> <phrase role="number">126</phrase><phrase role="special">))</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">title_color</phrase><phrase role="special">(</phrase><phrase role="identifier">white</phrase><phrase role="special">);</phrase>
+
+ <phrase role="comment">//X axis settings.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">x_major_interval</phrase><phrase role="special">(</phrase><phrase role="number">2</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_major_tick_length</phrase><phrase role="special">(</phrase><phrase role="number">14</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_major_tick_width</phrase><phrase role="special">(</phrase><phrase role="number">1</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_minor_tick_length</phrase><phrase role="special">(</phrase><phrase role="number">7</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_minor_tick_width</phrase><phrase role="special">(</phrase><phrase role="number">1</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase role="number">3</phrase><phrase role="special">)</phrase>
+
+ <phrase role="comment">// Y axis settings.
+</phrase> <phrase role="special">.</phrase><phrase role="identifier">y_major_tick</phrase><phrase role="special">(</phrase><phrase role="number">10</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">y_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase role="number">2</phrase><phrase role="special">);</phrase>
+
+ <phrase role="comment">// Legend settings.
+</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">legend_title_font_size</phrase><phrase role="special">(</phrase><phrase role="number">15</phrase><phrase role="special">);</phrase>
+
+ <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data1</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Sqrt(x)&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">blue</phrase><phrase role="special">,</phrase>
+ <phrase role="identifier">_point_style</phrase> <phrase role="special">=</phrase> <phrase role="identifier">none</phrase><phrase role="special">,</phrase>
+ <phrase role="identifier">_show_line</phrase> <phrase role="special">=</phrase> <phrase role="keyword">true</phrase><phrase role="special">);</phrase>
+
+ <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data2</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;-2 + x^2&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">orange</phrase><phrase role="special">,</phrase>
+ <phrase role="identifier">_show_line</phrase> <phrase role="special">=</phrase> <phrase role="keyword">true</phrase><phrase role="special">);</phrase>
 
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data3</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;-1 + 2x&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">red</phrase><phrase role="special">,</phrase>
- <phrase role="identifier">_point_style</phrase> <phrase role="special">=</phrase> <phrase role="identifier">square</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data3</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;-1 + 2x&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">red</phrase><phrase role="special">,</phrase>
+ <phrase role="identifier">_point_style</phrase> <phrase role="special">=</phrase> <phrase role="identifier">square</phrase><phrase role="special">);</phrase>
 
- <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase role="string">&quot;2d_full.svg&quot;</phrase><phrase role="special">);</phrase>
+ <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase role="string">&quot;2d_full.svg&quot;</phrase><phrase role="special">);</phrase>
 
- <phrase role="keyword">return</phrase> <phrase role="number">0</phrase><phrase role="special">;</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="number">0</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>
 </programlisting>
- <para>
- This produces the following output:
- </para>
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/2d_full.png"></imagedata></imageobject>
- <textobject>
- <phrase>2d_full</phrase>
- </textobject>
- </inlinemediaobject>
- </para>
- <para>
- A little bit of color customization goes a long way!
- </para>
- </section>
- <section id="svg_plot.tutorial_2d_code_simple.2d_special">
- <title><link linkend="svg_plot.tutorial_2d_code_simple.2d_special"> Tutorial:
- 2D Special Features</link></title>
- <para>
- [header Y Axis Grid Lines]
- </para>
- <para>
- If you would like grid lines that go across the graph, you can make the following
- call to <code><phrase role="identifier">svg_1d_plot</phrase></code>:
- </para>
-
+ <para>
+ This produces the following output:
+ </para>
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/2d_full.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>2d_full</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
+ <para>
+ A little bit of color customization goes a <emphasis role="bold">very</emphasis>
+ long way!
+ </para>
+ </section>
+ <section id="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_special">
+ <title><link linkend="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_special">
+ Tutorial: 2D Special Features</link></title> <anchor id="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_special.y_axis_grid_lines"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_special.y_axis_grid_lines">Y-Axis
+ Grid Lines</link>
+ </bridgehead>
+ <para>
+ If you would like horizontal grid lines that go across the graph, you can
+ make the following call to <code><phrase role="identifier">svg_2d_plot</phrase></code>:
+ </para>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">y_major_grid_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
        <phrase role="special">.</phrase><phrase role="identifier">y_minor_grid_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- To style it, you would use the following calls:
- </para>
-
+ <para>
+ To style it, you could use the following calls:
+ </para>
+
+<programlisting>
+<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">y_major_grid_color</phrase><phrase role="special">(</phrase><phrase role="identifier">lightgray</phrase><phrase role="special">)</phrase> <phrase role="comment">// Darker color for major grid.
+</phrase> <phrase role="special">.</phrase><phrase role="identifier">y_minor_grid_color</phrase><phrase role="special">(</phrase><phrase role="identifier">whitesmoke</phrase><phrase role="special">);</phrase> <phrase role="comment">// lighter color for minor grid.
+</phrase></programlisting>
+ <para>
+ This will produce the following image:
+ </para>
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/2d_y_grid.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>2d_y_grid</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
+ <para>
+ Similarly you can have horizontal and/or vertical lines:
+ </para>
+
 <programlisting>
-<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">y_major_grid_color</phrase><phrase role="special">(</phrase><phrase role="identifier">lightgray</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">y_minor_grid_color</phrase><phrase role="special">(</phrase><phrase role="identifier">whitesmoke</phrase><phrase role="special">);</phrase>
+<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">x_major_grid_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_minor_grid_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- This will produce something like the following image:
- </para>
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/2d_y_grid.png"></imagedata></imageobject>
- <textobject>
- <phrase>2d_y_grid</phrase>
- </textobject>
- </inlinemediaobject>
- </para>
- <para>
- [header External Y Axis Style]
- </para>
- <para>
- For an alternate way to display a regular axis, you can use an external style:
- </para>
-
+ <para>
+ and color it similarly:
+ </para>
+
+<programlisting>
+<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">y_major_grid_color</phrase><phrase role="special">(</phrase><phrase role="identifier">lightblue</phrase><phrase role="special">)</phrase> <phrase role="comment">// Darker color for major grid.
+</phrase> <phrase role="special">.</phrase><phrase role="identifier">y_minor_grid_color</phrase><phrase role="special">(</phrase><phrase role="identifier">azure</phrase><phrase role="special">);</phrase> <phrase role="comment">// lighter color for minor grid.
+</phrase></programlisting>
+ <anchor id="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_special.external_y_axis_style"/>
+ <bridgehead renderas="sect5">
+ <link linkend="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_special.external_y_axis_style">External
+ Y Axis Style</link>
+ </bridgehead>
+ <para>
+ For an alternate way to display a regular axis, you can use an external
+ style:
+ </para>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">y_external_style_on</phrase><phrase role="special">(</phrase><phrase role="keyword">true</phrase><phrase role="special">);</phrase>
 </programlisting>
- <important>
- <para>
+ <important>
           <para>
- If the axis is turned off, <code><phrase role="identifier">y_external_style_on</phrase><phrase
- role="special">(</phrase><phrase role="keyword">true</phrase><phrase
- role="special">)</phrase></code> will not turn the axis back on. To do
- that, you must call <code><phrase role="identifier">axis_on</phrase><phrase
- role="special">(</phrase><phrase role="keyword">true</phrase><phrase
- role="special">)</phrase></code>
+ <para>
+ If the axis is turned off, <code><phrase role="identifier">y_external_style_on</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">true</phrase><phrase
+ role="special">)</phrase></code> will not turn the axis back on. To
+ do that, you must call <code><phrase role="identifier">axis_on</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">true</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
           </para>
+ </important>
+ <anchor id="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_special.fill_the_area_between_the_plot_and_the_axis"/>
+ <bridgehead renderas="sect5">
+ <link linkend="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_special.fill_the_area_between_the_plot_and_the_axis">Fill
+ the area between the plot and the axis</link>
+ </bridgehead>
+ <para>
+ When there is a call to the plot() method, define <code><phrase role="identifier">_area_fill_color</phrase></code>
         </para>
- </important>
- <para>
- [header Fill the area between the plot and the axis]
- </para>
- <para>
- When there is a call to the plot() method, define <code><phrase role="identifier">_area_fill_color</phrase></code>
- </para>
-
+
 <programlisting>
 <phrase role="identifier">multimap</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">my_data</phrase><phrase role="special">;</phrase>
 <phrase role="identifier">svg_2d_plot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase>
 
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Data&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">_area_fill_color</phrase><phrase role="special">(</phrase><phrase role="identifier">red</phrase><phrase role="special">));</phrase>
 </programlisting>
- <para>
- This produces the following image:
- </para>
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/2d_area_fill.png"></imagedata></imageobject>
- <textobject>
- <phrase>2d_area_fill</phrase>
- </textobject>
- </inlinemediaobject>
- </para>
- <para>
- [header Curve Interpolation]
- </para>
- <para>
- If you would like an interpolated curve shown over your data, simply use
- the following command:
- </para>
-
+ <para>
+ This produces the following image:
+ </para>
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/2d_area_fill.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>2d_area_fill</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_special.curve_interpolation"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.tutorial_2d_code_simple.2d_special.curve_interpolation">Curve
+ Interpolation</link>
+ </bridgehead>
+ <para>
+ If you would like an <emphasis role="bold">interpolated curve</emphasis>
+ shown over your data (rather than the default straight lines joining points),
+ simply use the following command:
+ </para>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Series 1&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">_bezier_curve</phrase> <phrase role="special">=</phrase> <phrase role="string">&quot;true&quot;</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- This produces something like the following images:
- </para>
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/2d_bezier.png"></imagedata></imageobject>
- <textobject>
- <phrase>2d_bezier</phrase>
- </textobject>
- </inlinemediaobject>
- </para>
- <warning>
         <para>
+ This produces something like the following images:
+ </para>
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/2d_bezier.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>2d_bezier</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
+ <warning>
           <para>
- The <code><phrase role="identifier">_bezier_curve</phrase></code> feature
- is still very much in its infancy. If you play nice with it, it will
- play nice with you, but it still displays undesired behavior in extreme
- circumstances. Do not use this feature with curves that have a limit
- (<code><phrase role="special">-</phrase><phrase role="identifier">NaN</phrase></code>,
- for example), or with data that has high irregularity in X-Axis spacing
- (a clump of points between (0, 1) on the X axis, with the next one at
- 100 on the X axis, for example)
+ <para>
+ The <code><phrase role="identifier">_bezier_curve</phrase></code> feature
+ still displays undesired behavior in extreme circumstances. Do not
+ use this feature with curves that have a numeric_limit value (<code><phrase
+ role="special">-</phrase><phrase role="identifier">NaN</phrase></code>,
+ for example), or with data that has high irregularity in X-Axis spacing
+ (for example, a clump of points between (0, 1) on the X axis, with
+ the next one at 100 on the X axis.)
+ </para>
           </para>
- </para>
- </warning>
+ </warning>
+ </section>
     </section>
- </section>
- <section id="svg_plot.svg_boxplot_tutorial">
- <title><link linkend="svg_plot.svg_boxplot_tutorial"> Boxplot</link></title>
- <section id="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple">
- <title><link linkend="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple">
- Simple Example</link></title>
+ <section id="svg_plot.svg_simple_code_example.svg_boxplot_tutorial">
+ <title><link linkend="svg_plot.svg_simple_code_example.svg_boxplot_tutorial">
+ Tutorial: Boxplot</link></title>
+ <section id="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple">
+ <title><link linkend="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple">
+ Simple Example</link></title>
 <programlisting>
-<phrase role="comment">// Functions we are using to simulate distributions.
+<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">boost</phrase><phrase role="special">/</phrase><phrase role="identifier">svg_plot</phrase><phrase role="special">/</phrase><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">hpp</phrase><phrase role="special">&gt;</phrase>
+<phrase role="keyword">using</phrase> <phrase role="keyword">namespace</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">svg</phrase><phrase role="special">;</phrase>
+<phrase role="preprocessor">#include</phrase> <phrase role="special">&lt;</phrase><phrase role="identifier">vector</phrase><phrase role="special">&gt;</phrase>
+<phrase role="keyword">using</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">vector</phrase><phrase role="special">;</phrase>
+
+<phrase role="comment">// Functions to simulate distributions.
 </phrase><phrase role="keyword">double</phrase> <phrase role="identifier">f</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase role="special">)</phrase>
 <phrase role="special">{</phrase>
     <phrase role="keyword">return</phrase> <phrase role="number">50</phrase> <phrase role="special">/</phrase> <phrase role="identifier">x</phrase><phrase role="special">;</phrase>
@@ -1011,18 +1115,16 @@
 
 <phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
 <phrase role="special">{</phrase>
- <phrase role="keyword">using</phrase> <phrase role="keyword">namespace</phrase> <phrase role="identifier">boost</phrase><phrase role="special">::</phrase><phrase role="identifier">svg</phrase><phrase role="special">;</phrase>
-
     <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">vector</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">data1</phrase><phrase role="special">,</phrase> <phrase role="identifier">data2</phrase><phrase role="special">;</phrase>
 
- <phrase role="comment">// Fill our vectors;
+ <phrase role="comment">// Fill our vectors with values from the functions f(x) and g(x)
 </phrase> <phrase role="keyword">for</phrase><phrase role="special">(</phrase><phrase role="keyword">double</phrase> <phrase role="identifier">i</phrase> <phrase role="special">=</phrase> <phrase role="special">.</phrase><phrase role="number">1</phrase><phrase role="special">;</phrase> <phrase role="identifier">i</phrase> <phrase role="special">&lt;</phrase> <phrase role="number">10</phrase><phrase role="special">;</phrase> <phrase role="identifier">i</phrase><phrase role="special">+=.</phrase><phrase role="number">1</phrase><phrase role="special">)</phrase>
     <phrase role="special">{</phrase>
         <phrase role="identifier">data1</phrase><phrase role="special">.</phrase><phrase role="identifier">push_back</phrase><phrase role="special">(</phrase><phrase role="identifier">f</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">));</phrase>
         <phrase role="identifier">data2</phrase><phrase role="special">.</phrase><phrase role="identifier">push_back</phrase><phrase role="special">(</phrase><phrase role="identifier">g</phrase><phrase role="special">(</phrase><phrase role="identifier">i</phrase><phrase role="special">));</phrase>
     <phrase role="special">}</phrase>
 
- <phrase role="comment">// Initialize a new plot.
+ <phrase role="comment">// Initialize a new box plot.
 </phrase> <phrase role="identifier">svg_boxplot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase>
 
     <phrase role="comment">// Color information.
@@ -1036,7 +1138,7 @@
     <phrase role="comment">// Axis information.
 </phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">y_range</phrase><phrase role="special">(</phrase><phrase role="number">0</phrase><phrase role="special">,</phrase> <phrase role="number">100</phrase><phrase role="special">)</phrase>
            <phrase role="special">.</phrase><phrase role="identifier">y_minor_tick_length</phrase><phrase role="special">(</phrase><phrase role="number">20</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">y_major_interval</phrase><phrase role="special">(</phrase><phrase role="number">20</phrase><phrase role="special">);</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">y_major_interval</phrase><phrase role="special">(</phrase><phrase role="number">20</phrase><phrase role="special">);</phrase>
 
     <phrase role="comment">// Write data.
 </phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">data1</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;[50 / x]&quot;</phrase><phrase role="special">);</phrase>
@@ -1046,4284 +1148,5379 @@
     <phrase role="keyword">return</phrase> <phrase role="number">0</phrase><phrase role="special">;</phrase>
 <phrase role="special">}</phrase>
 </programlisting>
- <anchor id="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.image_produced"/>
- <bridgehead renderas="sect4">
- <link linkend="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.image_produced">Image
- Produced</link>
- </bridgehead>
- <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/boxplot_simple.png"></imagedata></imageobject>
- <textobject>
- <phrase>boxplot_simple</phrase>
- </textobject>
- </inlinemediaobject>
- </para>
- <anchor id="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.basic_example_breakdown"/>
- <bridgehead renderas="sect4">
- <link linkend="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.basic_example_breakdown">Basic
- Example Breakdown</link>
- </bridgehead>
- <para>
- Let's examine what this does.
- </para>
- <anchor id="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.initializing_a_new_boxplot"/>
- <bridgehead renderas="sect3">
- <link linkend="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.initializing_a_new_boxplot">Initializing
- a new boxplot</link>
- </bridgehead>
- <para>
- This initializes a new boxplot. This also sets many of the default values.
- </para>
-
-<programlisting>
-<phrase role="identifier">svg_boxplot</phrase> <phrase role="identifier">my_plot</phrase><phrase role="special">;</phrase>
-</programlisting>
- <anchor id="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_a_color"/>
- <bridgehead renderas="sect3">
- <link linkend="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_a_color">Setting
- a color</link>
- </bridgehead>
- <para>
- This sets the border color of the entire image to black.
- </para>
-
+ <anchor id="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.image_boxplot_simple_svg"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.image_boxplot_simple_svg">Image
+ boxplot_simple.svg</link>
+ </bridgehead>
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/boxplot_simple.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>boxplot_simple</phrase>
+ </textobject>
+ </inlinemediaobject>
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.basic_example_breakdown"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.basic_example_breakdown">Basic
+ Example Breakdown</link>
+ </bridgehead>
+ <para>
+ Let's examine what this does.
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.initializing_a_new_boxplot"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.initializing_a_new_boxplot">Initializing
+ a new boxplot</link>
+ </bridgehead>
+ <para>
+ This initializes a new boxplot. This also sets the many default values.
+ 4 svg_boxplot my_plot;
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_a_color"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_a_color">Setting
+ a color</link>
+ </bridgehead>
+ <para>
+ This sets the border color of the entire image to black (not just the plot
+ area).
+ </para>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">background_border_color</phrase><phrase role="special">(</phrase><phrase role="identifier">black</phrase><phrase role="special">);</phrase>
 </programlisting>
- <anchor id="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_strings_in_the_plot"/>
- <bridgehead renderas="sect3">
- <link linkend="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_strings_in_the_plot">Setting
- strings in the plot</link>
- </bridgehead>
- <para>
- The following code sets the title that appears at the top of the graph, the
- label that appears at the bottom to name the X axis, and the label that appears
- to the left to name the Y axis.
- </para>
-
+ <anchor id="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_strings_in_the_plot"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_strings_in_the_plot">Setting
+ strings in the plot</link>
+ </bridgehead>
+ <para>
+ The following code sets the title that appears at the top of the graph,
+ the label that appears at the bottom to name the X-axis, and the label
+ that appears to the left to name the Y-axis.
+ </para>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Boxplots of Common Functions&quot;</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">x_label</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Functions&quot;</phrase><phrase role="special">)</phrase>
- <phrase role="special">.</phrase><phrase role="identifier">y_label</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Population Size&quot;</phrase><phrase role="special">);</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">x_label</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Functions&quot;</phrase><phrase role="special">)</phrase>
+ <phrase role="special">.</phrase><phrase role="identifier">y_label</phrase><phrase role="special">(</phrase><phrase role="string">&quot;Population Size&quot;</phrase><phrase role="special">);</phrase>
 </programlisting>
- <anchor id="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_axis_information"/>
- <bridgehead renderas="sect3">
- <link linkend="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_axis_information">Setting
- axis information</link>
- </bridgehead>
- <para>
- Axis information for the X axis is very limited, as the coordinate system
- for the X axis is discrete, based only on the number of box-and-whisker plots
- that appear in the same boxplot.
- </para>
- <para>
- Axis information for the Y axis, however, is customizable much in the same
- way that that axis information is customizable for the 1 and 2 dimensional
- graphs. // Axis information. my_plot.y_range(0, 100) .y_minor_tick_length(20)
- .y_major_interval(20);
- </para>
- <anchor id="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.writing_to_a_file"/>
- <bridgehead renderas="sect3">
- <link linkend="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.writing_to_a_file">Writing
- to a file</link>
- </bridgehead>
- <para>
- This writes our plot to the file &quot;simple.svg&quot;.
- </para>
- <para>
-
+ <anchor id="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_axis_information"/>
+ <bridgehead renderas="sect3">
+ <link linkend="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.setting_axis_information">Setting
+ axis information</link>
+ </bridgehead>
+ <para>
+ Axis information for the X-axis is very limited, as the coordinate system
+ for the X-axis is discrete, based only on the number of box-and-whisker
+ plots that appear in the same boxplot.
+ </para>
+ <para>
+ Axis information for the Y-axis, however, is customizable much in the same
+ way that that axis information is customizable for the 1 and 2 dimensional
+ graphs. // Axis information. my_plot.y_range(0, 100) .y_minor_tick_length(20)
+ .y_major_interval(20);
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.writing_to_a_file"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_simple.writing_to_a_file">Writing
+ to a file</link>
+ </bridgehead>
+ <para>
+ This finally writes our plot to the file &quot;boxplot_simple.svg&quot;.
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase role="string">&quot;boxplot_simple.svg&quot;</phrase><phrase role="special">);</phrase>
 </programlisting>
- </para>
- </section>
- <section id="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_full_layout">
- <title><link linkend="svg_plot.svg_boxplot_tutorial.svg_boxplot_tutorial_full_layout">
- Full Layout</link></title>
+ </para>
+ </section>
+ <section id="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_full">
+ <title><link linkend="svg_plot.svg_simple_code_example.svg_boxplot_tutorial.svg_boxplot_tutorial_full">
+ Full Boxplot Layout</link></title>
+ </section>
     </section>
- </section>
- <section id="svg_plot.behavior">
- <title><link linkend="svg_plot.behavior"> Behavior</link></title>
- <section id="svg_plot.behavior.behavior_limits">
- <title><link linkend="svg_plot.behavior.behavior_limits"> Numerical Limits</link></title>
- <para>
- All limits that are dealt with are double precision floating point limits.
- Limits are noticed upon the call to the <code><phrase role="identifier">plot</phrase><phrase
- role="special">()</phrase></code> method. Currently, the line interpolation
- algorithms do not take limits into account, so behavior may be incorrect
- for such plots as <code><phrase role="number">1</phrase> <phrase role="special">/</phrase>
- <phrase role="identifier">x</phrase></code>. Limits are drawn as a circle
- with <code><phrase role="identifier">_stroke_color</phrase> <phrase role="special">=</phrase>
- <phrase role="identifier">lightgray</phrase></code> and <code><phrase role="identifier">_fill_color</phrase>
- <phrase role="special">=</phrase> <phrase role="identifier">whitesmoke</phrase></code>.
- This will become customizable.
- </para>
- <para>
- [header NaN] Any double precision floating point numbers that return a nonzero
- value for the function <code><phrase role="identifier">_isnan</phrase><phrase
- role="special">(</phrase><phrase role="keyword">double</phrase><phrase role="special">)</phrase></code>
- is considered to be a NaN value. When plotted, the number will appear in
- the user-defined coordinates as 0.
- </para>
- <para>
- [header Infinity]
- </para>
- <para>
- Any double precision floating point number that is equal to either of the
- following is considered to be Infinity:
+ <section id="svg_plot.svg_simple_code_example.tutorial_stylesheet">
+ <title><link linkend="svg_plot.svg_simple_code_example.tutorial_stylesheet">
+ Stylesheet Tutorial</link></title>
+ <para>
+ To include a stylesheet into a program with any plot, simply use the <code><phrase
+ role="identifier">load_stylesheet</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;</phrase> <phrase role="identifier">filename</phrase><phrase
+ role="special">)</phrase></code> method to load an external stylesheet. To
+ load the file ./style.css, for instance, we would call:
       </para>
       
 <programlisting>
-<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">numeric_limits</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;::</phrase><phrase role="identifier">max</phrase><phrase role="special">()</phrase>
-<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">numeric_limits</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;::</phrase><phrase role="identifier">infinity</phrase><phrase role="special">()</phrase>
+<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">load_stylesheet</phrase><phrase role="special">(</phrase><phrase role="string">&quot;./style.css&quot;</phrase><phrase role="special">);</phrase>
 </programlisting>
       <para>
- When plotted, these values will appear at the top of your plot window. If
- the plot window is not turned on, these points will appear at the top of
- the graph.
- </para>
- <para>
- [header Negative Infinity]
+ There are a few instances when a <code><phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">runtime_error</phrase></code>
+ exception may be thrown.
       </para>
+ <itemizedlist>
+ <listitem>
+ If the filename is incorrect.
+ </listitem>
+ <listitem>
+ If the file does not pass the parsing phase.
+ </listitem>
+ </itemizedlist>
+ <anchor id="svg_plot.svg_simple_code_example.tutorial_stylesheet.using_the_stylesheet"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.tutorial_stylesheet.using_the_stylesheet">Using
+ the stylesheet</link>
+ </bridgehead>
       <para>
- Any double precision floating point number that is equal to either of the
- following is considered to be Negative Infinity:
+ Here is the output file for the simple 1D example, as used before:
       </para>
-
-<programlisting>
-<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">numeric_limits</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;::</phrase><phrase role="identifier">min</phrase><phrase role="special">()</phrase>
-<phrase role="special">-</phrase><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">numeric_limits</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;::</phrase><phrase role="identifier">infinity</phrase><phrase role="special">()</phrase>
-<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">numeric_limits</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;::</phrase><phrase role="identifier">denorm_min</phrase><phrase role="special">()</phrase>
-</programlisting>
       <para>
- When plotted, these values will appear at the bottom of your plot window.
- If the plot window is not turned on, these points will appear at the bottom
- of the graph.
+ <inlinemediaobject><imageobject><imagedata fileref="images/1d_simple.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>1d_simple</phrase>
+ </textobject>
+ </inlinemediaobject>
       </para>
       <para>
- Here is an example of numeric limit handling in action:
+ Here it is with a simple stylesheet applied (from $PROJECT_ROOT/libs/svg_plot/example/style.css):
       </para>
+ <caution>
+ <para>
+ <para>
+ When the user will have the option to convert the graph to another image
+ format, the stylesheets will be ignored. These would provide the user
+ with an even more complex function object that they would need to implement.
+ If you provide a stylesheet, make sure you know what will not be converted.
+ (Currently, that is everything in the stylesheets.)
+ </para>
+ </para>
+ </caution>
       <para>
- <inlinemediaobject><imageobject><imagedata fileref="images/2d_limit.png"></imagedata></imageobject>
+ <inlinemediaobject><imageobject><imagedata fileref="images/1d_simple_style.png"></imagedata></imageobject>
         <textobject>
- <phrase>2d_limit</phrase>
+ <phrase>1d_simple_style</phrase>
         </textobject>
         </inlinemediaobject>
       </para>
     </section>
- </section>
- <section id="svg_plot.plot_defaults">
- <title><link linkend="svg_plot.plot_defaults"> Defaults</link></title>
- <section id="svg_plot.plot_defaults.1d_defaults">
- <title><link linkend="svg_plot.plot_defaults.1d_defaults"> <code><phrase role="identifier">svg_1d_plot</phrase></code>
- Defaults</link></title>
- <para>
- You may have noticed that there are certain defaults that are true at the
- beginning of the plotting. Here is a table of the defaults:
- </para>
- <table frame="all"> <title>Default Values</title>
- <tgroup cols="3">
- <thead>
- <row>
- <entry>
- <para>
- object
- </para>
- </entry><entry>
+ <section id="svg_plot.svg_simple_code_example.behavior">
+ <title><link linkend="svg_plot.svg_simple_code_example.behavior"> Behavior</link></title>
+ <section id="svg_plot.svg_simple_code_example.behavior.behavior_limits">
+ <title><link linkend="svg_plot.svg_simple_code_example.behavior.behavior_limits">
+ Numerical Limits</link></title>
+ <para>
+ All limits that are dealt with are double precision floating-point limits.
+ Limits are detected when data is added to the plot by the call to the
+ <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
+ method.
+ </para>
+ <para>
+ Currently, the line interpolation algorithms do not take limits into account,
+ so behavior may be incorrect for such plots as <code><phrase role="number">1</phrase>
+ <phrase role="special">/</phrase> <phrase role="identifier">x</phrase></code>.
+ </para>
+ <para>
+ Data at the limits are drawn as a circle with <code><phrase role="identifier">_stroke_color</phrase>
+ <phrase role="special">=</phrase> <phrase role="identifier">lightgray</phrase></code>
+ and <code><phrase role="identifier">_fill_color</phrase> <phrase role="special">=</phrase>
+ <phrase role="identifier">whitesmoke</phrase></code>. This will become
+ customizable.
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.behavior.behavior_limits.nan"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.behavior.behavior_limits.nan">NaN</link>
+ </bridgehead>
+ <para>
+ Any double precision floating-point numbers that return a nonzero value
+ for the function <code><phrase role="identifier">_isnan</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">double</phrase><phrase
+ role="special">)</phrase></code> is considered to be a NaN value. When
+ plotted, the number will appear in the user-defined coordinates as 0.
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.behavior.behavior_limits.infinity"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.behavior.behavior_limits.infinity">Infinity</link>
+ </bridgehead>
+ <para>
+ Any double precision floating point number that is equal to either of the
+ following is considered to be Infinity:
+ </para>
+
+<programlisting>
+<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">numeric_limits</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;::</phrase><phrase role="identifier">max</phrase><phrase role="special">()</phrase>
+<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">numeric_limits</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;::</phrase><phrase role="identifier">infinity</phrase><phrase role="special">()</phrase>
+</programlisting>
+ <para>
+ When plotted, these values will appear at the <emphasis role="bold">top</emphasis>
+ of your plot window. If the plot window is not turned on, these points
+ will appear at the top of the graph.
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.behavior.behavior_limits.negative_infinity"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.behavior.behavior_limits.negative_infinity">Negative
+ Infinity</link>
+ </bridgehead>
+ <para>
+ Any double precision floating point number that is equal to either of the
+ following is considered to be Negative Infinity:
+ </para>
+
+<programlisting>
+<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">numeric_limits</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;::</phrase><phrase role="identifier">min</phrase><phrase role="special">()</phrase>
+<phrase role="special">-</phrase><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">numeric_limits</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;::</phrase><phrase role="identifier">infinity</phrase><phrase role="special">()</phrase>
+<phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">numeric_limits</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">&gt;::</phrase><phrase role="identifier">denorm_min</phrase><phrase role="special">()</phrase>
+</programlisting>
+ <para>
+ When plotted, these values will appear at the <emphasis role="bold">bottom</emphasis>
+ of your plot window. If the plot window is not turned on, these points
+ will appear at the bottom of the graph.
+ </para>
+ <para>
+ Here is an example of numeric limits handling in action:
+ </para>
+ <para>
+ <inlinemediaobject><imageobject><imagedata fileref="images/2d_limit.png"></imagedata></imageobject>
+ <textobject>
+ <phrase>2d_limit</phrase>
+ </textobject>
+ </inlinemediaobject> [\TODO this file is missing!]
+ </para>
+ </section>
+ <section id="svg_plot.svg_simple_code_example.behavior.behavior_stylesheets">
+ <title><link linkend="svg_plot.svg_simple_code_example.behavior.behavior_stylesheets">
+ Stylesheets</link></title>
+ <para>
+ Stylesheets currently have only a single way of being used with the program:
+ they are parsed by the <code><phrase role="identifier">svg</phrase></code>
+ class, and if the stylesheet parses correctly, they are loaded directly
+ into the SVG file. I recognize that it may also be desired to link to an
+ external stylesheet, but this presents a few problems.
+ </para>
+ <itemizedlist>
+ <listitem>
+ Both of the files now need to be transported with the produced document.
+ </listitem>
+ <listitem>
+ Any user-provided function object that is used to convert between image
+ formats now suddenly needs to be able to load the image format from an
+ external source.
+ </listitem>
+ </itemizedlist>
+ <para>
+ When the image converter portion of the project is completed, the image
+ format function object will not be forced to deal with CSS. This is primarily
+ a practical matter, and keeps simple an already difficult task. This will
+ not preclude a method that extracts appropriate data from the CSS file
+ and calls the appropriate functions. For example, if the user provides
+ the following:
+ </para>
+
+<programlisting>
+<phrase role="preprocessor">#Background</phrase>
+<phrase role="special">{</phrase>
+ <phrase role="identifier">fill</phrase> <phrase role="special">:</phrase> <phrase role="preprocessor">#FFF</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">stroke</phrase> <phrase role="special">:</phrase> #<phrase role="number">041010</phrase> <phrase role="special">;</phrase>
+<phrase role="special">}</phrase>
+</programlisting>
+ <para>
+ why shouldn't
+ </para>
+
+<programlisting>
+<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">background_color</phrase><phrase role="special">(</phrase><phrase role="identifier">black</phrase><phrase role="special">);</phrase>
+<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">background_border_color</phrase><phrase role="special">(</phrase><phrase role="identifier">svg_color</phrase><phrase role="special">(</phrase><phrase role="number">4</phrase><phrase role="special">,</phrase> <phrase role="number">16</phrase><phrase role="special">,</phrase> <phrase role="number">16</phrase><phrase role="special">));</phrase>
+</programlisting>
+ <para>
+ be called?
+ </para>
+ <caution>
+ <para>
             <para>
- Default value
+ Please note that the language that is accepted by the parser is actually
+ stricter than the real CSS standard allows for. Following GSoC, the
+ parser will be reimplemented to reflect the parser suggested by the
+ CSS standard. All identifiers (class, ID, or otherwise), must be the
+ <emphasis role="bold">one and only</emphasis> identifier on the line.
+ The following is not accepted:
             </para>
- </entry><entry>
             <para>
- Rationale
+ rect, circle { fill : #00FF00; stroke : #000000; }
             </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
             <para>
- All colors not defined in this table
+ But the following is:
             </para>
- </entry><entry>
             <para>
- black
- </para>
- </entry><entry>
- <para>
- K.I.S.S. Coloring will be highly dependent on user needs
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Axis
- </para>
- </entry><entry>
- <para>
- On, internal style
- </para>
- </entry><entry>
- <para>
- Most graphs include an axis of some kind. The internal axis style is
- used because this seems to be the default behavior in many textbooks
- I have owned.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Distance between major X ticks
- </para>
- </entry><entry>
- <para>
- <code><phrase role="number">3</phrase> <phrase role="identifier">units</phrase></code>
- </para>
- </entry><entry>
- <para>
- Reasonably fits into a plot window
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Font size of the legend title
- </para>
- </entry><entry>
- <para>
- 12
- </para>
- </entry><entry>
- <para>
- Reasonable when paired with the image size
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Font size of the X Label
- </para>
- </entry><entry>
- <para>
- 12
- </para>
- </entry><entry>
- <para>
- Reasonable when paired with the image size
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Font size of the title
- </para>
- </entry><entry>
- <para>
- 30
- </para>
- </entry><entry>
- <para>
- Makes the title stand out
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Grid lines
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">All</phrase> <phrase role="identifier">off</phrase></code>
- </para>
- </entry><entry>
- <para>
- Grid lines are a user's personal choice, so I default with the simpler
- model
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Image background
- </para>
- </entry><entry>
- <para>
- white
- </para>
- </entry><entry>
- <para>
- K.I.S.S. Coloring will be highly dependent on user needs.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Image size
- </para>
- </entry><entry>
- <para>
- <code><phrase role="number">500</phrase> <phrase role="identifier">by</phrase>
- <phrase role="number">350</phrase></code>
- </para>
- </entry><entry>
- <para>
- Details discernable. The image is easily viewable by those using 800x600
- monitors
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Legend
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">Off</phrase></code>
- </para>
- </entry><entry>
- <para>
- The goal of the defaults is to provide the cleanest possible plot as
- a default. Excluding the legend meets this goal. If there is a public
- outcry, I can change this.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Legend background
- </para>
- </entry><entry>
- <para>
- white
- </para>
- </entry><entry>
- <para>
- K.I.S.S. Coloring will be highly dependent on user needs
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Major tick length
- </para>
- </entry><entry>
- <para>
- 20 pixels
- </para>
- </entry><entry>
- <para>
- Tasteful default when paired with the window size. This also makes
- the major ticks easily distinguishable from the minor ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Major tick width
- </para>
- </entry><entry>
- <para>
- 2 pixels
- </para>
- </entry><entry>
- <para>
- Major ticks are more obvious than minor ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Minor tick length
- </para>
- </entry><entry>
- <para>
- 10 pixels
- </para>
- </entry><entry>
- <para>
- Tasteful default when compared with the size of the grid. This makes
- the minor ticks less obvious than the major ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Minor tick width
- </para>
- </entry><entry>
- <para>
- 1 pixel
- </para>
- </entry><entry>
- <para>
- This makes the minor tick less obvious than the major ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Number of minor X ticks between each major X tick
- </para>
- </entry><entry>
- <para>
- 2
- </para>
- </entry><entry>
- <para>
- This allows the minor ticks to appear on the integers
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Plot Window
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">Off</phrase></code>
- </para>
- </entry><entry>
- <para>
- Initially off because it is the simplest case. I will change this if
- there is an outcry
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Plot window background
- </para>
- </entry><entry>
- <para>
- white
- </para>
- </entry><entry>
- <para>
- K.I.S.S. Coloring will be highly dependent on user needs
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Title
- </para>
- </entry><entry>
- <para>
- On, <code><phrase role="string">&quot;Plot of data&quot;</phrase></code>
- </para>
- </entry><entry>
- <para>
- The title is on because this is one of the most basic elements of a
- graph. The title is set to a default because when <code><phrase role="identifier">title_on</phrase>
- <phrase role="special">==</phrase> <phrase role="keyword">true</phrase></code>,
- something should display
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Title size
- </para>
- </entry><entry>
- <para>
- <code><phrase role="number">30</phrase></code>
- </para>
- </entry><entry>
- <para>
- This is clearly visible in a variety of image sizes
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- X Axis Label
- </para>
- </entry><entry>
- <para>
- <code><phrase role="string">&quot;X Axis&quot;</phrase></code>, Off
- </para>
- </entry><entry>
- <para>
- &quot;X Axis&quot; is the label because something should display were
- the user to turn on the X axis label without setting text, and this
- is the most informative
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- X Axis Label Size
- </para>
- </entry><entry>
- <para>
- <code><phrase role="number">12</phrase></code>
- </para>
- </entry><entry>
- <para>
- This is a reasonable size at the default image size
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- X Grid (Major and Minor)
- </para>
- </entry><entry>
- <para>
- Off
- </para>
- </entry><entry>
- <para>
- Turned off in the interest of providing simple, clean plots
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- X Range
- </para>
- </entry><entry>
- <para>
- <code><phrase role="special">(-</phrase><phrase role="number">10</phrase><phrase
- role="special">,</phrase> <phrase role="number">10</phrase><phrase
- role="special">)</phrase></code>
+
+<programlisting>
+<phrase role="identifier">rect</phrase>
+<phrase role="special">{</phrase>
+ <phrase role="identifier">fill</phrase> <phrase role="special">:</phrase> #<phrase role="number">00FF</phrase><phrase role="number">00</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">stroke</phrase> <phrase role="special">:</phrase> #<phrase role="number">00FF</phrase><phrase role="number">00</phrase><phrase role="special">;</phrase>
+<phrase role="special">}</phrase>
+
+<phrase role="identifier">circle</phrase>
+<phrase role="special">{</phrase>
+ <phrase role="identifier">fill</phrase> <phrase role="special">:</phrase> #<phrase role="number">00FF</phrase><phrase role="number">00</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">stroke</phrase> <phrase role="special">:</phrase> #<phrase role="number">00FF</phrase><phrase role="number">00</phrase><phrase role="special">;</phrase>
+<phrase role="special">}</phrase>
+</programlisting>
             </para>
- </entry><entry>
             <para>
- Traditional plot viewport
+ None of the power of CSS is compromised (I believe), but it becomes
+ more verbose.
             </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
+ </para>
+ </caution>
+ </section>
     </section>
- <section id="svg_plot.plot_defaults.2d_defaults">
- <title><link linkend="svg_plot.plot_defaults.2d_defaults"> <code><phrase role="identifier">svg_2d_plot</phrase></code>
+ <section id="svg_plot.svg_simple_code_example.plot_defaults">
+ <title><link linkend="svg_plot.svg_simple_code_example.plot_defaults"> Plot
       Defaults</link></title>
- <para>
- You may have noticed that there are certain defaults that are true at the
- beginning of the plotting. Here is a table of the defaults:
- </para>
- <table frame="all"> <title>Default Values</title>
- <tgroup cols="3">
- <thead>
- <row>
- <entry>
- <para>
- object
- </para>
- </entry><entry>
- <para>
- Default value
- </para>
- </entry><entry>
- <para>
- Rationale
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- All colors not defined in this table
- </para>
- </entry><entry>
- <para>
- black
- </para>
- </entry><entry>
- <para>
- K.I.S.S. Coloring will be highly dependent on user needs
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Axis
- </para>
- </entry><entry>
- <para>
- On, internal style
- </para>
- </entry><entry>
- <para>
- Most graphs include an axis of some kind. The internal axis style is
- used because this seems to be the default behavior in many textbooks
- I have owned.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Distance between major X ticks
- </para>
- </entry><entry>
- <para>
- <code><phrase role="number">3</phrase> <phrase role="identifier">units</phrase></code>
- </para>
- </entry><entry>
- <para>
- Reasonably fits into a plot window
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Font size of the legend title
- </para>
- </entry><entry>
- <para>
- 12
- </para>
- </entry><entry>
- <para>
- Reasonable when paired with the image size
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Font size of the X Label
- </para>
- </entry><entry>
- <para>
- 12
- </para>
- </entry><entry>
- <para>
- Reasonable when paired with the image size
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Font size of the title
- </para>
- </entry><entry>
- <para>
- 30
- </para>
- </entry><entry>
- <para>
- Makes the title stand out
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Grid lines
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">All</phrase> <phrase role="identifier">off</phrase></code>
- </para>
- </entry><entry>
- <para>
- Grid lines are a user's personal choice, so I default with the simpler
- model
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Image background
- </para>
- </entry><entry>
- <para>
- white
- </para>
- </entry><entry>
- <para>
- K.I.S.S. Coloring will be highly dependent on user needs.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Image size
- </para>
- </entry><entry>
- <para>
- <code><phrase role="number">500</phrase> <phrase role="identifier">by</phrase>
- <phrase role="number">350</phrase></code>
- </para>
- </entry><entry>
- <para>
- Details discernable. The image is easily viewable by those using 800x600
- monitors
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Legend
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">Off</phrase></code>
- </para>
- </entry><entry>
- <para>
- The goal of the defaults is to provide the cleanest possible plot as
- a default. Excluding the legend meets this goal. If there is a public
- outcry, I can change this.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Legend background
- </para>
- </entry><entry>
- <para>
- white
- </para>
- </entry><entry>
- <para>
- K.I.S.S. Coloring will be highly dependent on user needs
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Major tick length
- </para>
- </entry><entry>
- <para>
- 20 pixels
- </para>
- </entry><entry>
- <para>
- Tasteful default when paired with the window size. This also makes
- the major ticks easily distinguishable from the minor ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Major tick width
- </para>
- </entry><entry>
- <para>
- 2 pixels
- </para>
- </entry><entry>
- <para>
- Major ticks are more obvious than minor ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Minor tick length
- </para>
- </entry><entry>
- <para>
- 10 pixels
- </para>
- </entry><entry>
- <para>
- Tasteful default when compared with the size of the grid. This makes
- the minor ticks less obvious than the major ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Minor tick width
- </para>
- </entry><entry>
- <para>
- 1 pixel
- </para>
- </entry><entry>
- <para>
- This makes the minor tick less obvious than the major ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Number of minor X ticks between each major X tick
- </para>
- </entry><entry>
- <para>
- 2
- </para>
- </entry><entry>
- <para>
- This allows the minor ticks to appear on the integers
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Plot Window
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">Off</phrase></code>
- </para>
- </entry><entry>
- <para>
- Initially off because it is the simplest case. I will change this if
- there is an outcry
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Plot window background
- </para>
- </entry><entry>
- <para>
- white
- </para>
- </entry><entry>
- <para>
- K.I.S.S. Coloring will be highly dependent on user needs
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Title
- </para>
- </entry><entry>
- <para>
- On, <code><phrase role="string">&quot;Plot of data&quot;</phrase></code>
- </para>
- </entry><entry>
- <para>
- The title is on because this is one of the most basic elements of a
- graph. The title is set to a default because when <code><phrase role="identifier">title_on</phrase>
- <phrase role="special">==</phrase> <phrase role="keyword">true</phrase></code>,
- something should display
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Title size
- </para>
- </entry><entry>
- <para>
- <code><phrase role="number">30</phrase></code>
- </para>
- </entry><entry>
- <para>
- This is clearly visible in a variety of image sizes
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- X Axis Label
- </para>
- </entry><entry>
- <para>
- <code><phrase role="string">&quot;X Axis&quot;</phrase></code>, Off
- </para>
- </entry><entry>
- <para>
- &quot;X Axis&quot; is the label because something should display were
- the user to turn on the X axis label without setting text, and this
- is the most informative
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- X Axis Label Size
- </para>
- </entry><entry>
- <para>
- <code><phrase role="number">12</phrase></code>
- </para>
- </entry><entry>
- <para>
- This is a reasonable size at the default image size
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- X Grid (Major and Minor)
- </para>
- </entry><entry>
- <para>
- Off
- </para>
- </entry><entry>
- <para>
- Turned off in the interest of providing simple, clean plots
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- X Range
- </para>
- </entry><entry>
- <para>
- <code><phrase role="special">(-</phrase><phrase role="number">10</phrase><phrase
- role="special">,</phrase> <phrase role="number">10</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Traditional plot viewport
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Y Axis Label
- </para>
- </entry><entry>
- <para>
- <code><phrase role="string">&quot;Y Axis&quot;</phrase></code>, Off
- </para>
- </entry><entry>
- <para>
- &quot;Y Axis&quot; is the label because something should display were
- the user to turn on the X axis label without setting text, and this
- is the most informative
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Y Axis Label Size
- </para>
- </entry><entry>
- <para>
- <code><phrase role="number">12</phrase></code>
- </para>
- </entry><entry>
- <para>
- This is a reasonable size at the default image size
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Y Grid (Major and Minor)
- </para>
- </entry><entry>
- <para>
- Off
- </para>
- </entry><entry>
- <para>
- Turned off in the interest of providing simple, clean plots
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- Y Range
- </para>
- </entry><entry>
- <para>
- <code><phrase role="special">(-</phrase><phrase role="number">10</phrase><phrase
- role="special">,</phrase> <phrase role="number">10</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Traditional plot viewport
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
+ <section id="svg_plot.svg_simple_code_example.plot_defaults.1d_defaults">
+ <title><link linkend="svg_plot.svg_simple_code_example.plot_defaults.1d_defaults">
+ <code><phrase role="identifier">svg_1d_plot</phrase></code> Defaults</link></title>
+ <para>
+ There are certain defaults, tabulated below, that are true at the beginning
+ of the plotting.
+ </para>
+ <table frame="all"> <title>Default Values</title>
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ object
+ </para>
+ </entry><entry>
+ <para>
+ Default value
+ </para>
+ </entry><entry>
+ <para>
+ Rationale
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ All colors not defined in this table
+ </para>
+ </entry><entry>
+ <para>
+ black
+ </para>
+ </entry><entry>
+ <para>
+ Coloring, if any, will be highly dependent on user needs.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Axis
+ </para>
+ </entry><entry>
+ <para>
+ On, internal style
+ </para>
+ </entry><entry>
+ <para>
+ Most graphs include an axis of some kind. The internal axis style
+ is used because this seems to be the default behavior in many textbooks
+ I have owned.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Coordinate precision
+ </para>
+ </entry><entry>
+ <para>
+ 3 decimal digits
+ </para>
+ </entry><entry>
+ <para>
+ Sufficient 1 in 1000 precision for typical small plots. (Higher precision
+ will increase svg file size).
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Distance between major X ticks
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="number">3</phrase> <phrase role="identifier">units</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Reasonably fits into a plot window.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Font size of the legend title
+ </para>
+ </entry><entry>
+ <para>
+ 12
+ </para>
+ </entry><entry>
+ <para>
+ Reasonable when paired with the image size.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Font size of the X Label
+ </para>
+ </entry><entry>
+ <para>
+ 12
+ </para>
+ </entry><entry>
+ <para>
+ Reasonable when paired with the image size.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Font size of the title
+ </para>
+ </entry><entry>
+ <para>
+ 30
+ </para>
+ </entry><entry>
+ <para>
+ Makes the title stand out.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Grid lines
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">All</phrase> <phrase role="identifier">off</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Grid lines are a user's personal choice, so default is none.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Image background
+ </para>
+ </entry><entry>
+ <para>
+ white
+ </para>
+ </entry><entry>
+ <para>
+ Coloring, if any, will be highly dependent on user needs.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Image size
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="number">500</phrase> <phrase role="identifier">by</phrase>
+ <phrase role="number">350</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Details discernable. The image is easily viewable by those using
+ 800x600 monitors.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Legend
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">Off</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ The goal of the defaults is to provide the cleanest possible plot
+ as a default. Excluding the legend meets this goal.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Legend background
+ </para>
+ </entry><entry>
+ <para>
+ white
+ </para>
+ </entry><entry>
+ <para>
+ Coloring, if any, will be highly dependent on user needs.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Major tick length
+ </para>
+ </entry><entry>
+ <para>
+ 20 pixels
+ </para>
+ </entry><entry>
+ <para>
+ Tasteful default when paired with the window size. This also makes
+ the major ticks easily distinguishable from the minor ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Major tick width
+ </para>
+ </entry><entry>
+ <para>
+ 2 pixels
+ </para>
+ </entry><entry>
+ <para>
+ Major ticks are more obvious than minor ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Minor tick length
+ </para>
+ </entry><entry>
+ <para>
+ 10 pixels
+ </para>
+ </entry><entry>
+ <para>
+ Tasteful default when compared with the size of the grid. This makes
+ the minor ticks less obvious than the major ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Minor tick width
+ </para>
+ </entry><entry>
+ <para>
+ 1 pixel
+ </para>
+ </entry><entry>
+ <para>
+ This makes the minor tick less obvious than the major ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Number of minor X ticks between each major X tick
+ </para>
+ </entry><entry>
+ <para>
+ 2
+ </para>
+ </entry><entry>
+ <para>
+ This allows the minor ticks to appear on the integer values.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Plot Window
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">Off</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Initially off because it is the simplest case.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Plot window background
+ </para>
+ </entry><entry>
+ <para>
+ white
+ </para>
+ </entry><entry>
+ <para>
+ Coloring, if any, will be highly dependent on user needs.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Title
+ </para>
+ </entry><entry>
+ <para>
+ On, <code><phrase role="string">&quot;Plot of data&quot;</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ The title is on because this is one of the most basic elements of
+ a graph. The title is set to a default because when <code><phrase
+ role="identifier">title_on</phrase> <phrase role="special">==</phrase>
+ <phrase role="keyword">true</phrase></code>, something should display.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Title size
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="number">30</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ This is clearly visible in a variety of image sizes.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ X Axis Label
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="string">&quot;X Axis&quot;</phrase></code>, Off
+ </para>
+ </entry><entry>
+ <para>
+ &quot;X Axis&quot; is the label because <emphasis>something</emphasis>
+ should display were the user to turn on the X-axis label without
+ setting text.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ X Axis Label Size
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="number">12</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ This is a reasonable size at the default image size.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ X Grid (Major and Minor)
+ </para>
+ </entry><entry>
+ <para>
+ Off
+ </para>
+ </entry><entry>
+ <para>
+ Turned off in the interest of providing simple, clean plots.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ X Range
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="special">(-</phrase><phrase role="number">10</phrase><phrase
+ role="special">,</phrase> <phrase role="number">10</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Traditional plot viewport (but almost all plots will need to set
+ both X and Y ranges).
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+ <section id="svg_plot.svg_simple_code_example.plot_defaults.2d_defaults">
+ <title><link linkend="svg_plot.svg_simple_code_example.plot_defaults.2d_defaults">
+ <code><phrase role="identifier">svg_2d_plot</phrase></code> Defaults</link></title>
+ <para>
+ You may have noticed that there are certain defaults that are true at the
+ beginning of the plotting. Here is a table of the defaults:
+ </para>
+ <table frame="all"> <title>Default Values</title>
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ object
+ </para>
+ </entry><entry>
+ <para>
+ Default value
+ </para>
+ </entry><entry>
+ <para>
+ Rationale
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ All colors not defined in this table
+ </para>
+ </entry><entry>
+ <para>
+ black
+ </para>
+ </entry><entry>
+ <para>
+ Coloring, if any, will be highly dependent on user needs.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Axis
+ </para>
+ </entry><entry>
+ <para>
+ On, internal style
+ </para>
+ </entry><entry>
+ <para>
+ Most graphs include an axis of some kind. The internal axis style
+ is used because this seems to be the default behavior in many textbooks
+ I have owned.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Distance between major X ticks
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="number">3</phrase> <phrase role="identifier">units</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Reasonably fits into a plot window.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Font size of the legend title
+ </para>
+ </entry><entry>
+ <para>
+ 12
+ </para>
+ </entry><entry>
+ <para>
+ Reasonable when paired with the image size.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Font size of the X Label
+ </para>
+ </entry><entry>
+ <para>
+ 12
+ </para>
+ </entry><entry>
+ <para>
+ Reasonable when paired with the image size.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Font size of the title
+ </para>
+ </entry><entry>
+ <para>
+ 30
+ </para>
+ </entry><entry>
+ <para>
+ Makes the title stand out.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Grid lines
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">All</phrase> <phrase role="identifier">off</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Grid lines are a user's personal choice, so default is off
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Image background
+ </para>
+ </entry><entry>
+ <para>
+ white
+ </para>
+ </entry><entry>
+ <para>
+ Coloring, if any, will be highly dependent on user needs.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Image size
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="number">500</phrase> <phrase role="identifier">by</phrase>
+ <phrase role="number">350</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Details discernable. The image is easily viewable by those using
+ 800x600 monitors.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Legend
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">Off</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ The goal of the defaults is to provide the cleanest possible plot
+ as a default. Excluding the legend meets this goal.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Legend background
+ </para>
+ </entry><entry>
+ <para>
+ white
+ </para>
+ </entry><entry>
+ <para>
+ Coloring, if any, will be highly dependent on user needs.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Major tick length
+ </para>
+ </entry><entry>
+ <para>
+ 20 pixels
+ </para>
+ </entry><entry>
+ <para>
+ Tasteful default when paired with the window size. This also makes
+ the major ticks easily distinguishable from the minor ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Major tick width
+ </para>
+ </entry><entry>
+ <para>
+ 2 pixels
+ </para>
+ </entry><entry>
+ <para>
+ Major ticks are more obvious than minor ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Minor tick length
+ </para>
+ </entry><entry>
+ <para>
+ 10 pixels
+ </para>
+ </entry><entry>
+ <para>
+ Tasteful default when compared with the size of the grid. This makes
+ the minor ticks less obvious than the major ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Minor tick width
+ </para>
+ </entry><entry>
+ <para>
+ 1 pixel
+ </para>
+ </entry><entry>
+ <para>
+ This makes the minor tick less obvious than the major ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Number of minor X ticks between each major X tick
+ </para>
+ </entry><entry>
+ <para>
+ 2
+ </para>
+ </entry><entry>
+ <para>
+ This allows the minor ticks to appear on the integers.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Plot Window
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">Off</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Initially off because it is the simplest case.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Plot window background
+ </para>
+ </entry><entry>
+ <para>
+ white
+ </para>
+ </entry><entry>
+ <para>
+ Coloring, if any, will be highly dependent on user needs.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Title
+ </para>
+ </entry><entry>
+ <para>
+ On, <code><phrase role="string">&quot;Plot of data&quot;</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ The title is on because this is one of the most basic elements of
+ a graph. The title is set to a default because when <code><phrase
+ role="identifier">title_on</phrase> <phrase role="special">==</phrase>
+ <phrase role="keyword">true</phrase></code>, <emphasis>something</emphasis>
+ should display.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Title size
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="number">30</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ This is clearly visible in a variety of image sizes.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ X Axis Label
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="string">&quot;X Axis&quot;</phrase></code>, Off
+ </para>
+ </entry><entry>
+ <para>
+ &quot;X Axis&quot; is the label because <emphasis>something</emphasis>
+ should display were the user to turn on the X axis label without
+ setting text.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ X Axis Label Size
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="number">12</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ This is a reasonable size at the default image size.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ X Grid (Major and Minor)
+ </para>
+ </entry><entry>
+ <para>
+ Off
+ </para>
+ </entry><entry>
+ <para>
+ Turned off in the interest of providing simple, clean plots.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ X Range
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="special">(-</phrase><phrase role="number">10</phrase><phrase
+ role="special">,</phrase> <phrase role="number">10</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Traditional plot viewport.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Y Axis Label
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="string">&quot;Y Axis&quot;</phrase></code>, Off
+ </para>
+ </entry><entry>
+ <para>
+ &quot;Y Axis&quot; is the label because <emphasis>something</emphasis>
+ should display were the user to turn on the X axis label without
+ setting text, and this is the most informative.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Y Axis Label Size
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="number">12</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ This is a reasonable size at the default image size.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Y Grid (Major and Minor)
+ </para>
+ </entry><entry>
+ <para>
+ Off
+ </para>
+ </entry><entry>
+ <para>
+ Turned off in the interest of providing simple, clean plots.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ Y Range
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="special">(-</phrase><phrase role="number">10</phrase><phrase
+ role="special">,</phrase> <phrase role="number">10</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Traditional plot viewport.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
     </section>
- </section>
- <section id="svg_plot.interface">
- <title><link linkend="svg_plot.interface"> Interface</link></title>
- <section id="svg_plot.interface.svg_interface">
- <title><link linkend="svg_plot.interface.svg_interface"> <code><phrase role="identifier">svg</phrase></code>
- Public Interface</link></title> <table frame="all"> <title>class svg</title>
- <tgroup cols="3">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry><entry>
- <para>
- Notes
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg</phrase><phrase role="special">()</phrase></code>
- </para>
- </entry><entry>
- <para>
- Constructor
- </para>
- </entry><entry>
- <para>
- The default image size is (400, 400)
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">g_element</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">add_g_element</phrase><phrase role="special">()</phrase></code>
- </para>
- </entry><entry>
- <para>
- Adds a g_element at the root of the document tree. Acts as a <code><phrase
- role="identifier">push_back</phrase><phrase role="special">()</phrase></code>
- </para>
- </entry><entry>
- <para>
- Returns the <code><phrase role="identifier">g_element</phrase></code>
- that is pushed back. This allows you to do something like the following:
- <code><phrase role="identifier">image</phrase><phrase role="special">.</phrase><phrase
- role="identifier">add_g_element</phrase><phrase role="special">().</phrase><phrase
- role="identifier">line</phrase><phrase role="special">(/**/).</phrase><phrase
- role="identifier">line</phrase><phrase role="special">(/**/).</phrase><phrase
- role="identifier">rect</phrase><phrase role="special">(/**/);</phrase>
- </code> Which adds two lines and a rectangle to the g_element that
- was just created.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">circle</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">double</phrase> <phrase
- role="identifier">y</phrase><phrase role="special">,</phrase> <phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase>
- <phrase role="identifier">radius</phrase> <phrase role="special">=</phrase>
- <phrase role="number">5</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Adds a point at (x,y) in the root level of the document
- </para>
- </entry><entry>
- <para>
- If the user is calling the circle method, odds are they would prefer
- a real circle instead of a degenerate circle (a point). 5 is as good
- a default as any other, and the user does not likely want a point if
- they are making this call.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">g_element</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">get_g_element</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Gets the g_element at the index specified
- </para>
- </entry><entry>
- <para>
- Gives a runtime error if you specify an index that does not contain
- a <code><phrase role="identifier">g_element</phrase></code>. I am considering
- providing an iterator interface to access these elements.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase>
- <phrase role="identifier">get_x_size</phrase><phrase role="special">()</phrase></code>
- </para>
- </entry><entry>
- <para>
- Returns the width of the image
- </para>
- </entry><entry>
- <para>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase>
- <phrase role="identifier">get_y_size</phrase><phrase role="special">()</phrase></code>
- </para>
- </entry><entry>
- <para>
- Returns the height of the image
- </para>
- </entry><entry>
- <para>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">image_size</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">unsigned</phrase>
- <phrase role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the size of the image produced, in pixels
- </para>
- </entry><entry>
- <para>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">line</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase> <phrase role="identifier">x1</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">double</phrase> <phrase
- role="identifier">y1</phrase><phrase role="special">,</phrase> <phrase
- role="keyword">double</phrase> <phrase role="identifier">x2</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">double</phrase> <phrase
- role="identifier">y2</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Adds a line from (x1,y1) to (x2,y2) in the root level of the document
- </para>
- </entry><entry>
- <para>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">path_element</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">path</phrase><phrase role="special">()</phrase></code>
- </para>
- </entry><entry>
- <para>
- Pushes a <code><phrase role="identifier">path_element</phrase></code>
- to the back of the tree and returns a reference to it. This allows
- you to do the following:
+ <section id="svg_plot.svg_simple_code_example.interface">
+ <title><link linkend="svg_plot.svg_simple_code_example.interface"> Public Interfaces</link></title>
+ <section id="svg_plot.svg_simple_code_example.interface.svg_interface">
+ <title><link linkend="svg_plot.svg_simple_code_example.interface.svg_interface">
+ <code><phrase role="identifier">svg</phrase></code> Public Interface</link></title>
+ <table frame="all"> <title>class `svg`</title>
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry><entry>
+ <para>
+ Notes &amp; Examples
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Constructor
+ </para>
+ </entry><entry>
+ <para>
+ Default image size (pixels) is (400, 400).
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">coord_precision</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the precision output for coordinates (decimal digits)
+ </para>
+ </entry><entry>
+ <para>
+ default 3, but for mobiles, 2 might suffice.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Constructor
+ </para>
+ </entry><entry>
+ <para>
+ Default image size (pixels) is (400, 400).
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">copyright_holder</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set copyright holder for the SVG XML document, as comment and XML.
+ </para>
+ </entry><entry>
+ <para>
+ &lt;!-- SVG Plot Copyright Paul A. Bristow 2007 --&gt; &lt;meta name<literal>&quot;copyright&quot;
+ content</literal>&quot;Paul A. Bristow&quot; /&gt;
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;</phrase> <phrase role="identifier">copyright_holder</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the copyright holder for the SVG XML document
+ </para>
+ </entry><entry>
+ <para>
+ Returns the input value for copyright holder. Does not return any
+ XML
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">author</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the author of the document
+ </para>
+ </entry><entry>
+ <para>
+ The copyright_holder is the default author
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">copyright_date</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set copyright date for the SVG XML document, as comment and XML.
+ </para>
+ </entry><entry>
+ <para>
+ &lt;!-- SVG Plot Copyright Paul A. Bristow 2007 --&gt; &lt;meta name<literal>&quot;date&quot;
+ content</literal>&quot;2007&quot; /&gt;
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;</phrase> <phrase role="identifier">copyright_date</phrase><phrase
+ role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the copyright date for the SVG XML document
+ </para>
+ </entry><entry>
+ <para>
+ Returns the date string, not the associated XML.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">description</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets description for the SVG XML document, as comment and XML.
+ </para>
+ </entry><entry>
+ <para>
+ &lt;!-- My Document description --&gt; &lt;desc&gt;My Document description&lt;/desc&gt;
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;</phrase> <phrase role="identifier">description</phrase><phrase
+ role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the description of the document.
+ </para>
+ </entry><entry>
+ <para>
+ Returns the description string, not the associated XML
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;</phrase> <phrase role="identifier">author</phrase><phrase
+ role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the author of the document.
+ </para>
+ </entry><entry>
+ <para>
+ The default is the copyright_holder.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">document_title</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets title for the SVG XML document (not the plot)
+ </para>
+ </entry><entry>
+ <para>
+ &lt;title&gt;My Document title&lt;/title&gt;
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">int</phrase> <phrase role="identifier">document_size</phrase><phrase
+ role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the number of elements in the root of the document
+ </para>
+ </entry><entry>
+ <para>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">int</phrase> <phrase role="identifier">coord_precision</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the current precision of doubles in the document
+ </para>
+ </entry><entry>
+ <para>
+ The default is 3
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">license</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">const</phrase>
+ <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase
+ role="identifier">string</phrase><phrase role="special">,</phrase>
+ <phrase role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">const</phrase>
+ <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase
+ role="identifier">string</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set license terms (if any): reproduction, distribution, attribution,
+ commercialuse
+ </para>
+ </entry><entry>
+ <para>
+ &quot;permits&quot; (default), &quot;requires&quot;, or &quot;prohibits&quot;.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;</phrase> <phrase role="identifier">reproduction</phrase><phrase
+ role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the Reproduction segment of the license
+ </para>
+ </entry><entry>
+ <para>
+ The default is <code><phrase role="string">&quot;&quot;</phrase></code>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;</phrase> <phrase role="identifier">distribution</phrase><phrase
+ role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the Distribution segment of the license
+ </para>
+ </entry><entry>
+ <para>
+ The default is <code><phrase role="string">&quot;&quot;</phrase></code>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;</phrase> <phrase role="identifier">attribution</phrase><phrase
+ role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the Attribution segment of the license
+ </para>
+ </entry><entry>
+ <para>
+ The default is <code><phrase role="string">&quot;&quot;</phrase></code>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;</phrase> <phrase role="identifier">commercialuse</phrase><phrase
+ role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the Commercial Use segment of the license
+ </para>
+ </entry><entry>
+ <para>
+ The default is <code><phrase role="string">&quot;&quot;</phrase></code>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">license</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)]</phrase> <phrase
+ role="special">[</phrase><phrase role="identifier">Sets</phrase>
+ <phrase role="identifier">whether</phrase> <phrase role="keyword">or</phrase>
+ <phrase role="keyword">not</phrase> <phrase role="identifier">the</phrase>
+ <phrase role="identifier">license</phrase> <phrase role="identifier">information</phrase>
+ <phrase role="identifier">should</phrase> <phrase role="identifier">be</phrase>
+ <phrase role="identifier">added</phrase> <phrase role="identifier">to</phrase>
+ <phrase role="identifier">the</phrase> <phrase role="identifier">written</phrase>
+ <phrase role="identifier">document</phrase><phrase role="special">]</phrase>
+ <phrase role="special">[</phrase></code>false`
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">bool</phrase> <phrase role="identifier">is_license</phrase><phrase
+ role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns whether or not a license will be output with a written document.
+ </para>
+ </entry><entry>
+ <para>
+ Permits reproduction &amp; distribution but requires atribution.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">get_g_element</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Class derived from svg_element.
+ </para>
+ </entry><entry>
+ <para>
+ Graph element: line, circle, rect... Node element of document tree.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">g_element</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">add_g_element</phrase><phrase role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Adds a g_element at the root of the document tree. Acts as a <code><phrase
+ role="identifier">push_back</phrase><phrase role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the <code><phrase role="identifier">g_element</phrase></code>
+ that is pushed back. This allows you to do something like the following:
+ <code><phrase role="identifier">image</phrase><phrase role="special">.</phrase><phrase
+ role="identifier">add_g_element</phrase><phrase role="special">().</phrase><phrase
+ role="identifier">line</phrase><phrase role="special">(/**/).</phrase><phrase
+ role="identifier">line</phrase><phrase role="special">(/**/).</phrase><phrase
+ role="identifier">rect</phrase><phrase role="special">(/**/);</phrase>
+ </code> which adds two lines and a rectangle to the g_element that
+ was just created.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">circle</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">double</phrase>
+ <phrase role="identifier">y</phrase><phrase role="special">,</phrase>
+ <phrase role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase>
+ <phrase role="identifier">radius</phrase> <phrase role="special">=</phrase>
+ <phrase role="number">5</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Adds a point at (x,y) in the root level of the document
+ </para>
+ </entry><entry>
+ <para>
+ If the user is calling the circle method, odds are they would prefer
+ a real circle instead of a degenerate circle (a point). 5 is as good
+ a default as any other, and the user is unlikely want a point if
+ they are making this call.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">g_element</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">get_g_element</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Gets the g_element at the index specified.
+ </para>
+ </entry><entry>
+ <para>
+ Gives a runtime error if you specify an index that does not contain
+ a <code><phrase role="identifier">g_element</phrase></code>. An iterator
+ interface to access these elements might be useful.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_size</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the width of the image (pixels).
+ </para>
+ </entry><entry>
+ <para>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_size</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the height of the image (pixels).
+ </para>
+ </entry><entry>
+ <para>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase>
+ <phrase role="identifier">x_size</phrase><phrase role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the width of the image (pixels).
+ </para>
+ </entry><entry>
+ <para>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase>
+ <phrase role="identifier">y_size</phrase><phrase role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Returns the height of the image (pixels).
+ </para>
+ </entry><entry>
+ <para>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">image_size</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">unsigned</phrase>
+ <phrase role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the size of the image produced, (pixels).
+ </para>
+ </entry><entry>
+ <para>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">line</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">double</phrase> <phrase role="identifier">x1</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">double</phrase>
+ <phrase role="identifier">y1</phrase><phrase role="special">,</phrase>
+ <phrase role="keyword">double</phrase> <phrase role="identifier">x2</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">double</phrase>
+ <phrase role="identifier">y2</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Adds a line from (x1,y1) to (x2,y2) in the root level of the document.
+ </para>
+ </entry><entry>
+ <para>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">path_element</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">path</phrase><phrase role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Pushes a <code><phrase role="identifier">path_element</phrase></code>
+ to the back of the tree and returns a reference to it. This allows
+ chaining, for example:
 <programlisting>
 <phrase role="identifier">path_element</phrase><phrase role="special">&amp;</phrase> <phrase role="identifier">my_path</phrase> <phrase role="special">=</phrase> <phrase role="identifier">image</phrase><phrase role="special">.</phrase><phrase role="identifier">path</phrase><phrase role="special">();</phrase>
 
 <phrase role="identifier">my_path</phrase><phrase role="special">.</phrase><phrase role="identifier">M</phrase><phrase role="special">(</phrase><phrase role="number">3</phrase><phrase role="special">,</phrase> <phrase role="number">3</phrase><phrase role="special">).</phrase><phrase role="identifier">l</phrase><phrase role="special">(</phrase><phrase role="number">150</phrase><phrase role="special">,</phrase> <phrase role="number">150</phrase><phrase role="special">);</phrase>
 </programlisting>
- I'm open to suggestions for how to improve this process.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">rect</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase> <phrase role="identifier">x1</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">double</phrase> <phrase
- role="identifier">y1</phrase><phrase role="special">,</phrase> <phrase
- role="keyword">double</phrase> <phrase role="identifier">width</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">double</phrase> <phrase
- role="identifier">height</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Adds a rectangle at point (x1, y1) that has width <code><phrase role="identifier">width</phrase></code>
- and height <code><phrase role="identifier">height</phrase></code>
- </para>
- </entry><entry>
- <para>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">text</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">double</phrase> <phrase
- role="identifier">y</phrase><phrase role="special">,</phrase> <phrase
- role="identifier">std</phrase><phrase role="special">::</phrase><phrase
- role="identifier">string</phrase> <phrase role="identifier">text</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Adds text <code><phrase role="identifier">text</phrase></code> at (x,y)
- in the root level of the document
- </para>
- </entry><entry>
- <para>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
- role="special">::</phrase><phrase role="identifier">string</phrase><phrase
- role="special">&amp;)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Writes the document to the file represented by the argument
- </para>
- </entry><entry>
- <para>
- Opens the file stream itself and tries to call <code><phrase role="identifier">write</phrase><phrase
- role="special">(</phrase><phrase role="identifier">std</phrase><phrase
- role="special">::</phrase><phrase role="identifier">ostream</phrase><phrase
- role="special">&amp;)</phrase></code>. Throws <code><phrase role="identifier">std</phrase><phrase
- role="special">::</phrase><phrase role="identifier">runtime_exception</phrase></code>
- if it can not open the file.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase
- role="identifier">std</phrase><phrase role="special">::</phrase><phrase
- role="identifier">ostream</phrase><phrase role="special">&amp;)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Writes the document to the stream represented by the argument
- </para>
- </entry><entry>
- <para>
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- </section>
- <section id="svg_plot.interface.svg_1d_plot_interface">
- <title><link linkend="svg_plot.interface.svg_1d_plot_interface"> <code><phrase
- role="identifier">svg_1d_plot</phrase></code> Public Interface</link></title>
- <table frame="all"> <title>Miscellaneous Functions</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">()</phrase></code>
- </para>
- </entry><entry>
- <para>
- See the defaults section for further details
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">image_size</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">unsigned</phrase>
- <phrase role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the size of the image produced, in pixels
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">legend_title_font_size</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the font size for the legend title
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
- role="special">::</phrase><phrase role="identifier">string</phrase><phrase
- role="special">&amp;)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the string to be used for the title
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">title_font_size</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the font size for the title
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
- role="special">::</phrase><phrase role="identifier">string</phrase><phrase
- role="special">&amp;)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Writes the plot to the file passed as a parameter
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase
- role="identifier">ostream</phrase><phrase role="special">&amp;)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Writes the plot to a stream passed as a parameter
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Commands</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">axis_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets whether the axis is on or off
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets whether the legend is on or off
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">plot_window_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets whether the plot will be displayed in its own window, or will
- be &quot;full screen&quot; in the image
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">title_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Determines whether or not the image title is displayed
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_axis_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Determines whether or not the X axis is displayed
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_external_style_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Determines whether or not the axis is inside or outside of the plot.
- Defaults to <code><phrase role="keyword">false</phrase></code>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_label_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets whether or not the x axis label will show
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_labels_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- sets whether or not the major ticks will be labelled on the x axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_grid_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Determines whether or not the major grid on the X axis will be displayed
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_minor_grid_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Determines whether or not the minor grid on the X axis will be displayed
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_axis_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Determines whether or not the Y axis is displayed
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Colors</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">background_border_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the background border color for the legend as <code><phrase role="identifier">col</phrase></code>,
- an RGB color
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">background_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the background color for the whole image
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">legend_background_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the background color for the legend as <code><phrase role="identifier">col</phrase></code>,
- an RGB color
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">legend_border_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the border color for the legend as <code><phrase role="identifier">col</phrase></code>,
- an RGB color
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">plot_background_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the color of the plot area. Note: this only goes into effect if
- plot_area(true) has been called
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">title_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the title color
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_axis_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the lines that form the axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_label_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the labels that go along the X axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_grid_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the grid that runs perpindicular to the X axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_tick_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the major ticks of the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_minor_grid_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the minor grid of the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_minor_tick_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the minor ticks of the x-axis
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Axis Definition</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_axis_width</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the stroke width of the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_label</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
- role="special">::</phrase><phrase role="identifier">string</phrase><phrase
- role="special">&amp;)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the label of the x-axis. This does not guarantee that it will
- be shown. You must run <code><phrase role="identifier">x_label_on</phrase><phrase
- role="special">(</phrase><phrase role="keyword">true</phrase><phrase
- role="special">)</phrase></code> for that guarantee
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_interval</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the distance (in Cartesian units) between ticks on the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_tick_length</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the length (in pixels) of the x-axis major ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_tick_width</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the width (in pixels) of the major ticks on the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_minor_tick_length</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the length (in pixels) of the x-axis minor tick lengths
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_minor_tick_width</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the width (in pixels) of the minor ticks on the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the number of minor ticks between each major tick
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_range</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase> <phrase role="identifier">x1</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">double</phrase> <phrase
- role="identifier">x2</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the scale of the x axis from x1 to x2. Throws an exception if
- x2&lt;=x1
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <anchor id="svg_plot.interface.svg_1d_plot_interface.the__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method"/>
- <bridgehead renderas="sect4">
- <link linkend="svg_plot.interface.svg_1d_plot_interface.the__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method">The
- <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
- Method</link>
- </bridgehead>
- <para>
- The <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
- method is defined using Boost.Parameter. As such, it supports a few extra
- named parameters, as well as a deduced parameter.
- </para>
- <table frame="all"> <title>Required parameter</title>
- <tgroup cols="3">
- <thead>
- <row>
- <entry>
- <para>
- ID
- </para>
- </entry><entry>
- <para>
- Type (* is a wildcard)
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- _container
- </para>
- </entry><entry>
- <para>
- *
- </para>
- </entry><entry>
- <para>
- Any object that can return an iterator with begin() and end()
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- _title
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase
- role="identifier">string</phrase></code>
- </para>
- </entry><entry>
- <para>
- The name of this series
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Deduced parameter</title>
- <tgroup cols="4">
- <thead>
- <row>
- <entry>
- <para>
- ID
- </para>
- </entry><entry>
- <para>
- Type
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry><entry>
- <para>
- Default
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- _fill_color
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">svg_color</phrase></code>
- </para>
- </entry><entry>
- <para>
- This is the color that shows up inside of the circle that is being
- drawn
- </para>
- </entry><entry>
- <para>
- white
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Optional Parameters</title>
- <tgroup cols="4">
- <thead>
- <row>
- <entry>
- <para>
- ID
- </para>
- </entry><entry>
- <para>
- Type
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry><entry>
- <para>
- Default
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- _stroke_color
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">svg_color</phrase></code>
- </para>
- </entry><entry>
- <para>
- The outline of the circle that is being drawn
- </para>
- </entry><entry>
- <para>
- black
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- _point_style
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">point_shape</phrase></code>
- </para>
- </entry><entry>
- <para>
- This is the shape of the point. Options currently are between <literal>none</literal>,
- <literal>circle</literal>, and <literal>square</literal>.
- </para>
- </entry><entry>
- <para>
- circle
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- _size
- </para>
- </entry><entry>
- <para>
- <code><phrase role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase></code>
- </para>
- </entry><entry>
- <para>
- This is the height/width of the circle and square.
- </para>
- </entry><entry>
- <para>
- 10
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- _x_functor
- </para>
- </entry><entry>
- <para>
- *
- </para>
- </entry><entry>
- <para>
- A class or that contains a conversion function. You will not have to
- worry about this, unless you are trying to accomplish stuff like plotting
- a vector of humans. For example:
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">rect</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">double</phrase> <phrase role="identifier">x1</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">double</phrase>
+ <phrase role="identifier">y1</phrase><phrase role="special">,</phrase>
+ <phrase role="keyword">double</phrase> <phrase role="identifier">width</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">double</phrase>
+ <phrase role="identifier">height</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Adds a rectangle at point (x1, y1) that has <code><phrase role="identifier">width</phrase></code>
+ wide and <code><phrase role="identifier">height</phrase></code> high.
+ </para>
+ </entry><entry>
+ <para>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">text</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">double</phrase> <phrase role="identifier">x</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">double</phrase>
+ <phrase role="identifier">y</phrase><phrase role="special">,</phrase>
+ <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase
+ role="identifier">string</phrase> <phrase role="identifier">text</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Adds string <code><phrase role="identifier">text</phrase></code>
+ at (x,y) in the root level of the document
+ </para>
+ </entry><entry>
+ <para>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Writes the document to the file represented by the argument.
+ </para>
+ </entry><entry>
+ <para>
+ Opens the file stream itself and tries to call <code><phrase role="identifier">write</phrase><phrase
+ role="special">(</phrase><phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">ostream</phrase><phrase
+ role="special">&amp;)</phrase></code>. Throws <code><phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">runtime_exception</phrase></code>
+ if it can not open the file.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase
+ role="identifier">std</phrase><phrase role="special">::</phrase><phrase
+ role="identifier">ostream</phrase><phrase role="special">&amp;)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Writes the document to the stream represented by the argument.
+ </para>
+ </entry><entry>
+ <para>
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
+ <section id="svg_plot.svg_simple_code_example.interface.svg_1d_plot_interface">
+ <title><link linkend="svg_plot.svg_simple_code_example.interface.svg_1d_plot_interface">
+ <code><phrase role="identifier">svg_1d_plot</phrase></code> Public Interface</link></title>
+ <table frame="all"> <title>1D_plot Miscellaneous Functions</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ See the defaults section for further details
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">image_size</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">unsigned</phrase>
+ <phrase role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the size of the image produced (pixels)
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">coord_precision</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the precision output for coordinates (decimal digits, default
+ 3).
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">document_title</phrase><phrase role="special">(</phrase><phrase
+ role="identifier">std</phrase><phrase role="special">::</phrase><phrase
+ role="identifier">string</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets title for the SVG XML document (not the plot). &lt;title&gt;My
+ Document title&lt;/title&gt;
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">description</phrase><phrase role="special">(</phrase><phrase
+ role="identifier">std</phrase><phrase role="special">::</phrase><phrase
+ role="identifier">string</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets description for the SVG XML document, as comment and XML, for
+ example: &lt;!-- My Document description --&gt; &lt;desc&gt;My Document
+ description&lt;/desc&gt;
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">legend_title_font_size</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">unsigned</phrase>
+ <phrase role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the font size for the legend title.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the string to be used for the title.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">title_font_size</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the font size for the title.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Writes the plot to the file passed as a parameter.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">write</phrase><phrase role="special">(</phrase><phrase
+ role="identifier">ostream</phrase><phrase role="special">&amp;)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Writes the plot to a stream passed as a parameter.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>1D_plot Commands</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">axis_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets whether the axis is on (true) or off.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets whether the legend is on (true) or off.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">plot_window_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets whether the plot will be displayed in its own window, or will
+ be &quot;full screen&quot; in the image.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">title_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Determines whether or not the image title is displayed.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_axis_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Determines whether or not the X-axis is displayed.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_external_style_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Determines whether or not the axis is inside or outside of the plot.
+ Defaults is <code><phrase role="keyword">false</phrase></code>.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_label_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets whether or not the X-axis label will show
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_labels_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ sets whether or not the major ticks will be labelled on the X-axis
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_grid_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Determines whether or not the major grid on the X axis will be displayed.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_minor_grid_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Determines whether or not the minor grid on the X axis will be displayed.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_axis_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Determines whether or not the Y axis is displayed.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>1D_plot Colors</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">background_border_color</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">const</phrase> <phrase
+ role="identifier">svg_color</phrase> <phrase role="special">&amp;</phrase><phrase
+ role="identifier">col</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the background border color for the legend as <code><phrase role="identifier">col</phrase></code>,
+ an RGB color.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">background_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the background color for the whole image.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">legend_background_color</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">const</phrase> <phrase
+ role="identifier">svg_color</phrase> <phrase role="special">&amp;</phrase><phrase
+ role="identifier">col</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the background color for the legend as <code><phrase role="identifier">col</phrase></code>,
+ an RGB color.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">legend_border_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the border color for the legend as <code><phrase role="identifier">col</phrase></code>,
+ an RGB color.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">plot_background_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the color of the plot area. Note: this only goes into effect
+ if plot_area(true) has been called.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">title_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the title color.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_axis_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the lines that form the axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_label_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the labels that go along the X axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_grid_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the grid that runs perpindicular to the X axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_tick_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the major ticks of the x-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_minor_grid_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the minor grid of the x-axis
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_minor_tick_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the minor ticks of the x-axis.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>1D_plot X-Axis Definition</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_axis_width</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the stroke width of the x-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_label</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the label of the x-axis. This does not guarantee that it will
+ be shown. You must call <code><phrase role="identifier">x_label_on</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">true</phrase><phrase
+ role="special">)</phrase></code> to display.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_interval</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">double</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the distance (in Cartesian units) between ticks on the x-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_tick_length</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the length (pixels) of the x-axis major ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_tick_width</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the width (pixels) of the major ticks on the x-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_minor_tick_length</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the length (pixels) of the x-axis minor tick lengths.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_minor_tick_width</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the width (pixels) of the minor ticks on the x-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the number of minor ticks between each major tick.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_1d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_range</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">double</phrase> <phrase role="identifier">x1</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">double</phrase>
+ <phrase role="identifier">x2</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the scale of the x axis from x1 to x2. Throws an exception if
+ x2&lt;=x1.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <anchor id="svg_plot.svg_simple_code_example.interface.svg_1d_plot_interface.the_1d_plot__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method"/>
+ <bridgehead renderas="sect5">
+ <link linkend="svg_plot.svg_simple_code_example.interface.svg_1d_plot_interface.the_1d_plot__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method">The
+ 1D_plot <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
+ Method</link>
+ </bridgehead>
+ <para>
+ The <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
+ method is defined using Boost.Parameter. As such, it supports a few extra
+ named parameters, as well as a deduced parameter.
+ </para>
+ <table frame="all"> <title>1D_plot Required parameter</title>
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ ID
+ </para>
+ </entry><entry>
+ <para>
+ Type (* is a wildcard)
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ _container
+ </para>
+ </entry><entry>
+ <para>
+ *
+ </para>
+ </entry><entry>
+ <para>
+ Any object that can return an iterator with begin() and end()
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ _title
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase
+ role="identifier">string</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ The name of this data series.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>1D_plot Deduced parameter</title>
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ ID
+ </para>
+ </entry><entry>
+ <para>
+ Type
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry><entry>
+ <para>
+ Default
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ _fill_color
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">svg_color</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Color that shows <emphasis role="bold">inside the circle</emphasis>
+ being drawn.
+ </para>
+ </entry><entry>
+ <para>
+ white
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>1D_plot Optional Parameters</title>
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ ID
+ </para>
+ </entry><entry>
+ <para>
+ Type
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry><entry>
+ <para>
+ Default
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ _stroke_color
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">svg_color</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Outline of the circle that is being drawn.
+ </para>
+ </entry><entry>
+ <para>
+ black
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ _point_style
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">point_shape</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Shape of the point. Options currently are: <literal>none</literal>,
+ <literal>circle</literal>, and <literal>square</literal>.
+ </para>
+ </entry><entry>
+ <para>
+ circle
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ _size
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Height/width of the circle and square.
+ </para>
+ </entry><entry>
+ <para>
+ 10
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ _x_functor
+ </para>
+ </entry><entry>
+ <para>
+ *
+ </para>
+ </entry><entry>
+ <para>
+ A class or functor that contains a conversion function. You will
+ not have to worry about this, unless you are trying to plot a container
+ of type that does not have a conversion to double, for example, age
+ of a user-defined type <code><phrase role="identifier">humans</phrase></code>.
+ For example:
 <programlisting>
 <phrase role="keyword">class</phrase> <phrase role="identifier">my_functor</phrase>
 <phrase role="special">{</phrase>
- <phrase role="identifier">typdef</phrase> <phrase role="keyword">double</phrase> <phrase role="identifier">result_type</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">typdef</phrase> <phrase role="keyword">double</phrase> <phrase role="identifier">result_type</phrase><phrase role="special">;</phrase>
 
- <phrase role="keyword">double</phrase> <phrase role="keyword">operator</phrase><phrase role="special">()(</phrase><phrase role="keyword">const</phrase> <phrase role="identifier">human</phrase><phrase role="special">&amp;</phrase> <phrase role="identifier">_hum</phrase><phrase role="special">)</phrase>
- <phrase role="special">{</phrase>
- <phrase role="keyword">return</phrase> <phrase role="special">(</phrase><phrase role="keyword">double</phrase><phrase role="special">)(</phrase><phrase role="identifier">_hum</phrase><phrase role="special">.</phrase><phrase role="identifier">age</phrase><phrase role="special">());</phrase>
- <phrase role="special">}</phrase>
+ <phrase role="keyword">double</phrase> <phrase role="keyword">operator</phrase><phrase role="special">()(</phrase><phrase role="keyword">const</phrase> <phrase role="identifier">human</phrase><phrase role="special">&amp;</phrase> <phrase role="identifier">_hum</phrase><phrase role="special">)</phrase>
+ <phrase role="special">{</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="special">(</phrase><phrase role="keyword">double</phrase><phrase role="special">)(</phrase><phrase role="identifier">_hum</phrase><phrase role="special">.</phrase><phrase role="identifier">age</phrase><phrase role="special">());</phrase>
+ <phrase role="special">}</phrase>
 <phrase role="special">}</phrase>
 
-<phrase role="comment">// snip
+<phrase role="comment">// ...
 </phrase>
 <phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_plot</phrase><phrase role="special">,</phrase> <phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">_x_functor</phrase> <phrase role="special">=</phrase> <phrase role="identifier">my_functor</phrase><phrase role="special">());</phrase>
 </programlisting>
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">boost_default_convert</phrase></code>
- is sufficient in all cases where the data stored in the container can
- be directly casted to a double
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <para>
- Here are some examples of correct uses:
- </para>
- <anchor id="svg_plot.interface.svg_1d_plot_interface.using_fill_and_stroke_colors"/>
- <bridgehead renderas="sect3">
- <link linkend="svg_plot.interface.svg_1d_plot_interface.using_fill_and_stroke_colors">Using
- fill and stroke colors</link>
- </bridgehead>
-
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">boost_default_convert</phrase></code>
+ is sufficient in all cases where the data stored in the container
+ can be directly cast to a <code><phrase role="keyword">double</phrase></code>.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <para>
+ Here are some examples of using of the 1D_plot <code><phrase role="identifier">plot</phrase></code>
+ method:
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.interface.svg_1d_plot_interface.using_1d_plot_fill_and_stroke_colors"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.interface.svg_1d_plot_interface.using_1d_plot_fill_and_stroke_colors">Using
+ 1D_plot fill and stroke colors</link>
+ </bridgehead>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase>
 <phrase role="identifier">_fill_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">red</phrase><phrase role="special">,</phrase>
 <phrase role="identifier">_stroke_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">black</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- This has the same effect as the following:
- </para>
-
+ <para>
+ This has the same effect as the following:
+ </para>
+
 <programlisting>
-<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">red</phrase><phrase role="special">,</phrase> <phrase role="identifier">black</phrase><phrase role="special">);</phrase>
-</programlisting>
- <para>
- and also the same effect as:
- </para>
-
+<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">red</phrase><phrase role="special">,</phrase> <phrase role="identifier">black</phrase><phrase role="special">);</phrase> <phrase role="comment">// Order is significant:
+</phrase><phrase role="comment">// fill is red and stroke is black.
+</phrase></programlisting>
+ <para>
+ and also the same effect as:
+ </para>
+
 <programlisting>
 <phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase>
 <phrase role="identifier">_stroke_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
 <phrase role="identifier">_fill_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">red</phrase><phrase role="special">);</phrase>
 </programlisting>
- <para>
- Since _fill_color is a deduced parameter, when two svg_colors are used in
- the same function call, they are always inferred in the following order:
- (fill, stroke).
- </para>
- </section>
- <section id="svg_plot.interface.svg_2d_plot_interface">
- <title><link linkend="svg_plot.interface.svg_2d_plot_interface"> <code><phrase
- role="identifier">svg_2d_plot</phrase></code> Public Interface</link></title>
- <table frame="all"> <title>Miscellaneous</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">()</phrase></code>
- </para>
- </entry><entry>
- <para>
- See the defaults section for further details
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">image_size</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">unsigned</phrase>
- <phrase role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the size of the image produced, in pixels
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
- role="special">::</phrase><phrase role="identifier">string</phrase><phrase
- role="special">&amp;)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the string to be used for the title
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">title_font_size</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the font size for the title
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">legend_title_font_size</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the font size for the legend title
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Commands</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">axis_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets whether the axis is on or off
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets whether the legend is on or off
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">plot_window_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets whether the plot will be displayed in its own window, or will
- be &quot;full screen&quot; in the image
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">title_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Determines whether or not the image title is displayed
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_label_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets whether or not the X axis label will show
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_grid_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Determines whether or not the major grid on the X axis will be displayed
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_labels_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- sets whether or not the major ticks will be labelled on the x axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_minor_grid_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Determines whether or not the minor grid on the X axis will be displayed
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_label_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets whether or not the Y axis label will show
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_grid_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Determines whether or not the major grid on the Y axis will be displayed
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_labels_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- sets whether or not the major ticks will be labelled on the Y axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_minor_grid_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Determines whether or not the minor grid on the Y axis will be displayed
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Colors</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">title_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the title color
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">background_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the background color for the whole image
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">legend_background_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the background color for the legend as <code><phrase role="identifier">col</phrase></code>,
- an RGB color
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">legend_border_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the border color for the legend as <code><phrase role="identifier">col</phrase></code>,
- an RGB color
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">background_border_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the background border color for the legend as <code><phrase role="identifier">col</phrase></code>,
- an RGB color
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">plot_background_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the color of the plot area. Note: this only goes into effect if
- plot_area(true) has been called
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_axis_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the lines that form the axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_label_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the labels that go along the X axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_tick_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the major ticks of the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_grid_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the grid that runs perpindicular to the X axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_minor_tick_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the minor ticks of the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_axis_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the lines that form the Y axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_label_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the labels that go along the X axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_tick_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the major ticks of the Y-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_grid_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the grid that runs perpindicular to the Y axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_minor_tick_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the minor ticks of the Y-axis
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Axis Information</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_axis_width</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the stroke width of the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_label</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
- role="special">::</phrase><phrase role="identifier">string</phrase><phrase
- role="special">&amp;)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the label of the x-axis. This does not guarantee that it will
- be shown. You must run <code><phrase role="identifier">x_label</phrase><phrase
- role="special">(</phrase><phrase role="keyword">true</phrase><phrase
- role="special">)</phrase></code> for that guarantee
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_interval</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the distance (in Cartesian units) between ticks on the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_tick_length</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the length (in pixels) of the x-axis major ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_major_tick_width</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the width (in pixels) of the major ticks on the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_minor_tick</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the length (in pixels) of the x-axis minor ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_minor_tick_length</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the length (in pixels) of the x-axis minor tick lengths
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_minor_tick_width</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the width (in pixels) of the minor ticks on the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the number of minor ticks between each major tick
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_range</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase> <phrase role="identifier">x1</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">double</phrase> <phrase
- role="identifier">x2</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the scale of the x axis from x1 to x2. Throws an exception if
- x2&lt;=x1
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_axis_width</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the stroke width of the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_label</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
- role="special">::</phrase><phrase role="identifier">string</phrase><phrase
- role="special">&amp;)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the label of the x-axis. This does not guarantee that it will
- be shown. You must run <code><phrase role="identifier">x_label</phrase><phrase
- role="special">(</phrase><phrase role="keyword">true</phrase><phrase
- role="special">)</phrase></code> for that guarantee
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_tick</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the distance (in Cartesian units) between ticks on the Y axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_tick_length</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the length (in pixels) of the Y axis major ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_tick_width</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the width (in pixels) of the major ticks on the Y axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_minor_tick</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the length (in pixels) of the Y axis minor ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_tick_length</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the length (in pixels) of the Y axis minor tick lengths
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_minor_tick_width</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the width (in pixels) of the minor ticks on the Y axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the number of minor ticks between each major tick
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_scale</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase> <phrase role="identifier">y1</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">double</phrase> <phrase
- role="identifier">y2</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the scale of the Y axis from y1 to y2. Throws an exception if
- y2&lt;=y1
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <para>
- (Note: Getters omitted for now)
- </para>
- <para>
- [header The <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
- Method] The <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
- method is defined using Boost.Parameter. As such, it supports a few extra
- named parameters, as well as a deduced parameter.
- </para>
- <table frame="all"> <title>Required parameter</title>
- <tgroup cols="3">
- <thead>
- <row>
- <entry>
- <para>
- ID
- </para>
- </entry><entry>
- <para>
- Type (* is a wildcard)
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- _container
- </para>
- </entry><entry>
- <para>
- *
- </para>
- </entry><entry>
- <para>
- Any object that can return an iterator with begin() and end()
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- _title
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase
- role="identifier">string</phrase></code>
- </para>
- </entry><entry>
- <para>
- The name of this series
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Deduced parameter</title>
- <tgroup cols="4">
- <thead>
- <row>
- <entry>
- <para>
- ID
- </para>
- </entry><entry>
- <para>
- Type
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry><entry>
- <para>
- Default
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- _fill_color
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">svg_color</phrase></code>
- </para>
- </entry><entry>
- <para>
- This is the color that shows up inside of the circle that is being
- drawn
- </para>
- </entry><entry>
- <para>
- white
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Optional Parameters</title>
- <tgroup cols="4">
- <thead>
- <row>
- <entry>
- <para>
- ID
- </para>
- </entry><entry>
- <para>
- Type
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry><entry>
- <para>
- Default
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- _bezier_on
- </para>
- </entry><entry>
- <para>
- <code><phrase role="keyword">bool</phrase></code>
- </para>
- </entry><entry>
- <para>
- This determines whether or not Bézier curve interpolation will be
- applied to the plot lines. It is important to note that the curve interpolation
- is still in its infancy, and should only be used with reasonably nice
- data sets
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- _line_on
- </para>
- </entry><entry>
- <para>
- <code><phrase role="keyword">bool</phrase></code>
- </para>
- </entry><entry>
- <para>
- This determines whether or not there are lines drawn between data points.
- </para>
- </entry><entry>
- <para>
- false
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- _line_color
- </para>
- </entry><entry>
- <para>
- <code><phrase role="keyword">bool</phrase></code>
- </para>
- </entry><entry>
- <para>
- This determines the color of the lines between data points
- </para>
- </entry><entry>
- <para>
- black
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- _area_fill_color
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">svg_color</phrase></code>
- </para>
- </entry><entry>
- <para>
- Defining this enables the &quot;Fill Area Under Axis&quot; feature.
- the color you define will be the fill color between a line and the
- area under the axis. This only takes effect if <code><phrase role="identifier">_line_on</phrase>
- <phrase role="special">=</phrase> <phrase role="keyword">true</phrase></code>
- is called.
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- _stroke_color
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">svg_color</phrase></code>
- </para>
- </entry><entry>
- <para>
- The outline of the circle that is being drawn
- </para>
- </entry><entry>
- <para>
- black
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- _point_style
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">point_shape</phrase></code>
- </para>
- </entry><entry>
- <para>
- This is the shape of the point. Options currently are between <literal>none</literal>,
- <literal>circle</literal>, and <literal>square</literal>.
- </para>
- </entry><entry>
- <para>
- circle
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- _size
- </para>
- </entry><entry>
- <para>
- <code><phrase role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase></code>
- </para>
- </entry><entry>
- <para>
- This is the height/width of the circle and square.
- </para>
- </entry><entry>
- <para>
- 10
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- _x_functor
- </para>
- </entry><entry>
- <para>
- *
- </para>
- </entry><entry>
- <para>
- A class or that contains a conversion function. You will not have to
- worry about this, unless you are trying to accomplish stuff like plotting
- a vector of humans. For example:
-<programlisting>
-<phrase role="keyword">class</phrase> <phrase role="identifier">my_functor</phrase>
-<phrase role="special">{</phrase>
- <phrase role="identifier">typdef</phrase> <phrase role="identifier">pair</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">result_type</phrase><phrase role="special">;</phrase>
-
- <phrase role="identifier">pair</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="keyword">operator</phrase><phrase role="special">()(</phrase><phrase role="keyword">const</phrase> <phrase role="identifier">human</phrase><phrase role="special">&amp;</phrase> <phrase role="identifier">_hum</phrase><phrase role="special">)</phrase> <phrase role="keyword">const</phrase>
- <phrase role="special">{</phrase>
- <phrase role="keyword">return</phrase> <phrase role="identifier">pair</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;(</phrase><phrase role="identifier">i</phrase><phrase role="special">,</phrase> <phrase role="identifier">_hum</phrase><phrase role="special">.</phrase><phrase role="identifier">age</phrase><phrase role="special">());</phrase>
- <phrase role="special">}</phrase>
-<phrase role="special">}</phrase>
-
-<phrase role="comment">// snip
-</phrase>
-<phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_plot</phrase><phrase role="special">,</phrase> <phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">_x_functor</phrase> <phrase role="special">=</phrase> <phrase role="identifier">my_functor</phrase><phrase role="special">());</phrase>
-</programlisting>
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">boost_default_2d_convert</phrase></code>
- (the default) is sufficient in all cases where the data stored in the
- container can be directly casted to a double
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <para>
- Here are some examples of correct uses:
- </para>
- <anchor id="svg_plot.interface.svg_2d_plot_interface.using_fill_and_stroke_colors"/>
- <bridgehead renderas="sect3">
- <link linkend="svg_plot.interface.svg_2d_plot_interface.using_fill_and_stroke_colors">Using
- fill and stroke colors</link>
- </bridgehead>
-
-<programlisting>
-<phrase role="identifier">my_plot</phrase><phrase role="special">.(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase>
-<phrase role="identifier">_fill_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">red</phrase><phrase role="special">,</phrase>
-<phrase role="identifier">_stroke_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">black</phrase><phrase role="special">);</phrase>
-</programlisting>
- <para>
- This has the same effect as the following:
- </para>
-
-<programlisting>
-<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">red</phrase><phrase role="special">,</phrase> <phrase role="identifier">black</phrase><phrase role="special">);</phrase>
-</programlisting>
- <para>
- and also the same effect as:
- </para>
-
-<programlisting>
-<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase>
-<phrase role="identifier">_stroke_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
-<phrase role="identifier">_fill_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">red</phrase><phrase role="special">);</phrase>
-</programlisting>
- <para>
- Since _fill_color is a deduced parameter, when two svg_colors are used in
- the same function call, they are always inferred in the following order:
- (fill, stroke).
- </para>
- </section>
- <section id="svg_plot.interface.svg_boxplot_interface">
- <title><link linkend="svg_plot.interface.svg_boxplot_interface"> <code><phrase
- role="identifier">svg_boxplot</phrase></code> Public Interface</link></title>
- <table frame="all"> <title>Miscellaneous</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">()</phrase></code>
- </para>
- </entry><entry>
- <para>
- See the defaults section for further details
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">image_size</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">unsigned</phrase>
- <phrase role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the size of the image produced, in pixels
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
- role="special">::</phrase><phrase role="identifier">string</phrase><phrase
- role="special">&amp;)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the string to be used for the title
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">title_size</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the font size for the title
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Commands</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">title_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Determines whether or not the image title is displayed
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_label_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets whether or not the X axis label will show
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_labels_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- sets whether or not the major ticks will be labelled on the x axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_label_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets whether or not the Y axis label will show
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_labels_on</phrase><phrase role="special">(</phrase><phrase
- role="keyword">bool</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- sets whether or not the major ticks will be labelled on the Y axis
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Colors</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">title_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the title color
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">background_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the background color for the whole image
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">background_border_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the background border color for the legend as <code><phrase role="identifier">col</phrase></code>,
- an RGB color
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">plot_background_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Set the color of the plot area. Note: this only goes into effect if
- plot_area(true) has been called
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_label_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the labels that go along the X axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_tick_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the major ticks of the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_label_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the labels that go along the X axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_tick_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the major ticks of the Y-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_minor_tick_color</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
- <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the color of the minor ticks of the Y-axis
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Axis Information</title>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>
- <para>
- Signature
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_label</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
- role="special">::</phrase><phrase role="identifier">string</phrase><phrase
- role="special">&amp;)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the label of the x-axis. This does not guarantee that it will
- be shown. You must run <code><phrase role="identifier">x_label</phrase><phrase
- role="special">(</phrase><phrase role="keyword">true</phrase><phrase
- role="special">)</phrase></code> for that guarantee
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_tick_length</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the length (in pixels) of the x-axis ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">x_tick_width</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the width (in pixels) of the major ticks on the x-axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_label</phrase><phrase role="special">(</phrase><phrase
- role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
- role="special">::</phrase><phrase role="identifier">string</phrase><phrase
- role="special">&amp;)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the label of the x-axis. This does not guarantee that it will
- be shown. You must run <code><phrase role="identifier">x_label</phrase><phrase
- role="special">(</phrase><phrase role="keyword">true</phrase><phrase
- role="special">)</phrase></code> for that guarantee
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_interval</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the distance (in Cartesian units) between ticks on the Y axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_tick_length</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the length (in pixels) of the Y axis major ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_tick_width</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the width (in pixels) of the major ticks on the Y axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_num_minor_tick</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the length (in pixels) of the Y axis minor ticks
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_major_tick_length</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the length (in pixels) of the Y axis minor tick lengths
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_minor_tick_width</phrase><phrase role="special">(</phrase><phrase
- role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
- role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the width (in pixels) of the minor ticks on the Y axis
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase
- role="keyword">int</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the number of minor ticks between each major tick
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
- <phrase role="identifier">y_range</phrase><phrase role="special">(</phrase><phrase
- role="keyword">double</phrase> <phrase role="identifier">y1</phrase><phrase
- role="special">,</phrase> <phrase role="keyword">double</phrase> <phrase
- role="identifier">y2</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry><entry>
- <para>
- Sets the scale of the Y axis from y1 to y2. Throws an exception if
- y2&lt;=y1
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <para>
- (Note: Getters omitted for now)
- </para>
- <anchor id="svg_plot.interface.svg_boxplot_interface.the__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method"/>
- <bridgehead renderas="sect4">
- <link linkend="svg_plot.interface.svg_boxplot_interface.the__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method">The
- <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
- Method</link>
- </bridgehead>
- <para>
- The <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
- method is defined using Boost.Parameter. As such, it supports a few extra
- named parameters, as well as a deduced parameter.
- </para>
- <table frame="all"> <title>Required parameter</title>
- <tgroup cols="3">
- <thead>
- <row>
- <entry>
- <para>
- ID
- </para>
- </entry><entry>
- <para>
- Type (* is a wildcard)
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- ctr
- </para>
- </entry><entry>
- <para>
- *
- </para>
- </entry><entry>
- <para>
- Any object that can return an iterator with begin() and end()
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- name
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase
- role="identifier">string</phrase></code>
- </para>
- </entry><entry>
- <para>
- The name of this series
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table> <table frame="all"> <title>Optional Parameters</title>
- <tgroup cols="4">
- <thead>
- <row>
- <entry>
- <para>
- ID
- </para>
- </entry><entry>
- <para>
- Type
- </para>
- </entry><entry>
- <para>
- Description
- </para>
- </entry><entry>
- <para>
- Default
- </para>
- </entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>
- <para>
- box_style
- </para>
- </entry><entry>
- <para>
- <code><phrase role="keyword">const</phrase> <phrase role="identifier">svg_style</phrase><phrase
- role="special">&amp;</phrase></code>
- </para>
- </entry><entry>
- <para>
- Styles the box of the boxplot
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">svg_style</phrase><phrase role="special">(</phrase><phrase
- role="identifier">white</phrase><phrase role="special">,</phrase>
- <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
- <phrase role="number">1</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- median_style
- </para>
- </entry><entry>
- <para>
- <code><phrase role="keyword">const</phrase> <phrase role="identifier">svg_style</phrase><phrase
- role="special">&amp;</phrase></code>
- </para>
- </entry><entry>
- <para>
- Styles the median of the boxplot
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">svg_style</phrase><phrase role="special">(</phrase><phrase
- role="identifier">white</phrase><phrase role="special">,</phrase>
- <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
- <phrase role="number">1</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- axis_style
- </para>
- </entry><entry>
- <para>
- <code><phrase role="keyword">const</phrase> <phrase role="identifier">svg_style</phrase><phrase
- role="special">&amp;</phrase></code>
- </para>
- </entry><entry>
- <para>
- Styles the data range line (the line going through the middle
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">svg_style</phrase><phrase role="special">(</phrase><phrase
- role="identifier">white</phrase><phrase role="special">,</phrase>
- <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
- <phrase role="number">1</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- min_whisker_style
- </para>
- </entry><entry>
- <para>
- <code><phrase role="keyword">const</phrase> <phrase role="identifier">svg_style</phrase><phrase
- role="special">&amp;</phrase></code>
- </para>
- </entry><entry>
- <para>
- Styles the lower whisker
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">svg_style</phrase><phrase role="special">(</phrase><phrase
- role="identifier">white</phrase><phrase role="special">,</phrase>
- <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
- <phrase role="number">1</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- max_whisker_style
- </para>
- </entry><entry>
- <para>
- <code><phrase role="keyword">const</phrase> <phrase role="identifier">svg_style</phrase><phrase
- role="special">&amp;</phrase></code>
- </para>
- </entry><entry>
- <para>
- Styles the upper whisker
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">svg_style</phrase><phrase role="special">(</phrase><phrase
- role="identifier">white</phrase><phrase role="special">,</phrase>
- <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
- <phrase role="number">1</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- mild_outlier_style
- </para>
- </entry><entry>
- <para>
- <code><phrase role="keyword">const</phrase> <phrase role="identifier">plot_point_style</phrase><phrase
- role="special">&amp;</phrase></code>
- </para>
- </entry><entry>
- <para>
- Styles outliers within 3 Inter-Quartile Ranges (IQRs) of the edges
- of the box
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">plot_point_style</phrase><phrase role="special">(</phrase><phrase
- role="identifier">black</phrase><phrase role="special">,</phrase>
- <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
- <phrase role="number">0</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- ext_outlier_style
- </para>
- </entry><entry>
- <para>
- <code><phrase role="keyword">const</phrase> <phrase role="identifier">plot_point_style</phrase><phrase
- role="special">&amp;</phrase></code>
- </para>
- </entry><entry>
- <para>
- Styles outliers more than 3 IQRs away from the box.
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">plot_point_style</phrase><phrase role="special">(</phrase><phrase
- role="identifier">white</phrase><phrase role="special">,</phrase>
- <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
- <phrase role="number">1</phrase><phrase role="special">)</phrase></code>
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- whisker_length
- </para>
- </entry><entry>
- <para>
- unsigned int
- </para>
- </entry><entry>
- <para>
- Determines how long the whiskers at the end of the data range line
- will be
- </para>
- </entry><entry>
- <para>
- 30
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- box_width
- </para>
- </entry><entry>
- <para>
- unsigned int
- </para>
- </entry><entry>
- <para>
- Determines the width of the box
- </para>
- </entry><entry>
- <para>
- 60
- </para>
- </entry>
- </row>
- <row>
- <entry>
- <para>
- functor
- </para>
- </entry><entry>
- <para>
- *
- </para>
- </entry><entry>
- <para>
- A class or that contains a conversion function. You will not have to
- worry about this, unless you are trying to accomplish stuff like plotting
- a vector of humans. For example:
+ <para>
+ Since _fill_color is a Boost.Parameter deduced parameter, when two svg_colors
+ are used in the same function call, they are always inferred in the following
+ order: (fill, stroke).
+ </para>
+ </section>
+ <section id="svg_plot.svg_simple_code_example.interface.svg_2d_plot_interface">
+ <title><link linkend="svg_plot.svg_simple_code_example.interface.svg_2d_plot_interface">
+ <code><phrase role="identifier">svg_2d_plot</phrase></code> Public Interface</link></title>
+ <table frame="all"> <title>2D_plot Miscellaneous</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ See the defaults section for further details.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">image_size</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">unsigned</phrase>
+ <phrase role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the size (pixels) of the plot image produced.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the string to be used for the title.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">title_font_size</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the font size for the title.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">legend_title_font_size</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">unsigned</phrase>
+ <phrase role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the font size for the legend title.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>2D_plot Commands</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">axis_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets whether the axis is on (true) or off.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">legend_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets whether the legend is on (true) or off.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">plot_window_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets whether the plot will be displayed in its own window, or will
+ be &quot;full screen&quot; in the image.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">title_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Determines whether or not the image title is displayed.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_label_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets whether or not the X axis label will show.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_grid_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Determines whether or not the major grid on the X axis will be displayed.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_labels_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ sets whether or not the major ticks will be labelled on the x axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_minor_grid_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Determines whether or not the minor grid on the X axis will be displayed.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_label_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets whether or not the Y axis label will show.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_grid_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Determines whether or not the major grid on the Y axis will be displayed.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_labels_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ sets whether or not the major ticks will be labelled on the Y axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_minor_grid_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Determines whether or not the minor grid on the Y axis will be displayed.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>2D_plot Colors</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">title_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the plot title color.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">background_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the background color for the whole image.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">legend_background_color</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">const</phrase> <phrase
+ role="identifier">svg_color</phrase> <phrase role="special">&amp;</phrase><phrase
+ role="identifier">col</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the background color for the legend as <code><phrase role="identifier">col</phrase></code>,
+ an RGB color.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">legend_border_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the border color for the legend as <code><phrase role="identifier">col</phrase></code>,
+ an RGB color.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">background_border_color</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">const</phrase> <phrase
+ role="identifier">svg_color</phrase> <phrase role="special">&amp;</phrase><phrase
+ role="identifier">col</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the background border color for the legend as <code><phrase role="identifier">col</phrase></code>,
+ an RGB color.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">plot_background_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the color of the plot area. Note: this only goes into effect
+ if plot_area(true) has been called.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_axis_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the lines that form the axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_label_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the labels that go along the X axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_tick_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the major ticks of the x-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_grid_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the grid that runs perpindicular to the X axis
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_minor_tick_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the minor ticks of the x-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_axis_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the lines that form the Y axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_label_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the labels that go along the Y axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_tick_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the major ticks of the Y-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_grid_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the grid that runs perpindicular to the Y axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_minor_tick_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the minor ticks of the Y-axis.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>2D_plot Axis Information</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_axis_width</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the stroke width (pixels) of the x-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_label</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the label of the x-axis. You must set <code><phrase role="identifier">x_label</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">true</phrase><phrase
+ role="special">)</phrase></code> to display the label.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_interval</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">double</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the distance (Cartesian units) between ticks on the x-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_tick_length</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the length (pixels) of the x-axis major ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_major_tick_width</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the width (pixels) of the major ticks on the x-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_minor_tick</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the length (pixels) of the x-axis minor ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_minor_tick_length</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the length (pixels) of the x-axis minor tick lengths.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_minor_tick_width</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the width (pixels) of the minor ticks on the x-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the number of minor ticks between each major tick.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_range</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">double</phrase> <phrase role="identifier">x1</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">double</phrase>
+ <phrase role="identifier">x2</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the scale of the x axis from x1 to x2. Throws an exception if
+ x2 &lt;= x1.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_axis_width</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the stroke width of the x-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_label</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the label of the Y-axis. You must set <code><phrase role="identifier">x_label</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">true</phrase><phrase
+ role="special">)</phrase></code> to display the label.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_tick</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">double</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the distance (in Cartesian units) between ticks on the Y axis
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_tick_length</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the length (pixels) of the Y axis major ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_tick_width</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the width (pixels) of the major ticks on the Y axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_minor_tick</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the length (pixels) of the Y axis minor ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_tick_length</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the length (pixels) of the Y axis minor tick lengths.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_minor_tick_width</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the width (pixels) of the minor ticks on the Y axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the number of minor ticks between each major tick.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_2d_plot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_scale</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">double</phrase> <phrase role="identifier">y1</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">double</phrase>
+ <phrase role="identifier">y2</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the scale of the Y axis from y1 to y2. Throws an exception if
+ y2 &lt;= y1.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <para>
+ (Note: Getters omitted for now. TODO)
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.interface.svg_2d_plot_interface.the__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method"/>
+ <bridgehead renderas="sect5">
+ <link linkend="svg_plot.svg_simple_code_example.interface.svg_2d_plot_interface.the__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method">The
+ <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
+ Method</link>
+ </bridgehead>
+ <para>
+ The <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
+ method is defined using Boost.Parameter. As such, it supports a few extra
+ named parameters, as well as a deduced parameter.
+ </para>
+ <table frame="all"> <title>2D_plot Required parameter</title>
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ ID
+ </para>
+ </entry><entry>
+ <para>
+ Type (* is a wildcard)
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ _container
+ </para>
+ </entry><entry>
+ <para>
+ *
+ </para>
+ </entry><entry>
+ <para>
+ Any object that can return an iterator with begin() and end()
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ _title
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase
+ role="identifier">string</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ The name of this series
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>2D_plot Deduced parameter</title>
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ ID
+ </para>
+ </entry><entry>
+ <para>
+ Type
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry><entry>
+ <para>
+ Default
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ _fill_color
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">svg_color</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ This is the color that shows up inside of the circle that is being
+ drawn
+ </para>
+ </entry><entry>
+ <para>
+ white
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>2D_plot Optional Parameters</title>
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ ID
+ </para>
+ </entry><entry>
+ <para>
+ Type
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry><entry>
+ <para>
+ Default
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ _bezier_on
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="keyword">bool</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ This determines whether or not Bézier curve interpolation will be
+ applied to the plot lines. It is important to note that the curve
+ interpolation is still in its infancy, and should only be used with
+ reasonably nice data sets
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ _line_on
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="keyword">bool</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ This determines whether or not there are lines drawn between data
+ points.
+ </para>
+ </entry><entry>
+ <para>
+ false
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ _line_color
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="keyword">bool</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ This determines the color of the lines between data points.
+ </para>
+ </entry><entry>
+ <para>
+ black
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ _area_fill_color
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">svg_color</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Defining this enables the &quot;Fill Area Under Axis&quot; feature.
+ the color you define will be the fill color between a line and the
+ area under the axis. This only takes effect if <code><phrase role="identifier">_line_on</phrase>
+ <phrase role="special">=</phrase> <phrase role="keyword">true</phrase></code>
+ is called.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ _stroke_color
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">svg_color</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ The outline of the circle that is being drawn.
+ </para>
+ </entry><entry>
+ <para>
+ black
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ _point_style
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">point_shape</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ This is the shape of the point. Options currently are between <literal>none</literal>,
+ <literal>circle</literal>, and <literal>square</literal>.
+ </para>
+ </entry><entry>
+ <para>
+ circle
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ _size
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ This is the height/width of the circle and square.
+ </para>
+ </entry><entry>
+ <para>
+ 10
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ _x_functor
+ </para>
+ </entry><entry>
+ <para>
+ *
+ </para>
+ </entry><entry>
+ <para>
+ A class or that contains a conversion function. You will not have
+ to worry about this, unless you are trying to accomplish stuff like
+ plotting a vector of humans. For example:
+<programlisting>
+<phrase role="keyword">class</phrase> <phrase role="identifier">my_functor</phrase>
+<phrase role="special">{</phrase>
+ <phrase role="identifier">typdef</phrase> <phrase role="identifier">pair</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="identifier">result_type</phrase><phrase role="special">;</phrase>
+
+ <phrase role="identifier">pair</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;</phrase> <phrase role="keyword">operator</phrase><phrase role="special">()(</phrase><phrase role="keyword">const</phrase> <phrase role="identifier">human</phrase><phrase role="special">&amp;</phrase> <phrase role="identifier">_hum</phrase><phrase role="special">)</phrase> <phrase role="keyword">const</phrase>
+ <phrase role="special">{</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="identifier">pair</phrase><phrase role="special">&lt;</phrase><phrase role="keyword">double</phrase><phrase role="special">,</phrase> <phrase role="keyword">double</phrase><phrase role="special">&gt;(</phrase><phrase role="identifier">i</phrase><phrase role="special">,</phrase> <phrase role="identifier">_hum</phrase><phrase role="special">.</phrase><phrase role="identifier">age</phrase><phrase role="special">());</phrase>
+ <phrase role="special">}</phrase>
+<phrase role="special">}</phrase>
+
+<phrase role="comment">// snip
+</phrase>
+<phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_plot</phrase><phrase role="special">,</phrase> <phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;People&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">_x_functor</phrase> <phrase role="special">=</phrase> <phrase role="identifier">my_functor</phrase><phrase role="special">());</phrase>
+</programlisting>
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">boost_default_2d_convert</phrase></code>
+ (the default) is sufficient in all cases where the data stored in
+ the container can be directly cast to a double.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <para>
+ Here are some examples of correct uses:
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.interface.svg_2d_plot_interface.using_fill_and_stroke_colors"/>
+ <bridgehead renderas="sect3">
+ <link linkend="svg_plot.svg_simple_code_example.interface.svg_2d_plot_interface.using_fill_and_stroke_colors">Using
+ fill and stroke colors</link>
+ </bridgehead>
+
+<programlisting>
+<phrase role="identifier">my_plot</phrase><phrase role="special">.(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase>
+<phrase role="identifier">_fill_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">red</phrase><phrase role="special">,</phrase>
+<phrase role="identifier">_stroke_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">black</phrase><phrase role="special">);</phrase>
+</programlisting>
+ <para>
+ This has the same effect as the following:
+ </para>
+
+<programlisting>
+<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">red</phrase><phrase role="special">,</phrase> <phrase role="identifier">black</phrase><phrase role="special">);</phrase>
+</programlisting>
+ <para>
+ and also the same effect as:
+ </para>
+
+<programlisting>
+<phrase role="identifier">my_plot</phrase><phrase role="special">.</phrase><phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase>
+<phrase role="identifier">_stroke_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
+<phrase role="identifier">_fill_color</phrase> <phrase role="special">=</phrase> <phrase role="identifier">red</phrase><phrase role="special">);</phrase>
+</programlisting>
+ <para>
+ Since _fill_color is a deduced parameter, when two svg_colors are used
+ in the same function call, they are always inferred in the following order:
+ (fill, stroke).
+ </para>
+ </section>
+ <section id="svg_plot.svg_simple_code_example.interface.svg_boxplot_interface">
+ <title><link linkend="svg_plot.svg_simple_code_example.interface.svg_boxplot_interface">
+ <code><phrase role="identifier">svg_boxplot</phrase></code> Public Interface</link></title>
+ <table frame="all"> <title>Boxplot Miscellaneous</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">()</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ See the defaults section for further details.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">image_size</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">unsigned</phrase>
+ <phrase role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the size (pixels) of the plot image produced.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">title</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the string to be used for the plot title.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">title_size</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the font size for the plot title.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>Boxplot Commands</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">title_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Determines whether or not the image title is displayed.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_label_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets whether or not the X-axis label will show.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_labels_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ sets whether or not the major ticks will be labelled on the x axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_label_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets whether or not the Y-axis label will show.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_labels_on</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">bool</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ sets whether or not the major ticks will be labelled on the Y axis.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>Boxplot Colors</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">title_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the title color.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">background_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the background color for the whole image.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">background_border_color</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">const</phrase> <phrase
+ role="identifier">svg_color</phrase> <phrase role="special">&amp;</phrase><phrase
+ role="identifier">col</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the background border color for the legend as <code><phrase role="identifier">col</phrase></code>,
+ an RGB color.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">plot_background_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Set the color of the plot area. Note: this only goes into effect
+ if plot_area(true) has been called.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_label_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the labels that go along the X-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_tick_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the major ticks of the X-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_label_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the labels that go along the X-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_tick_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the major ticks of the Y-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_minor_tick_color</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">svg_color</phrase>
+ <phrase role="special">&amp;</phrase><phrase role="identifier">col</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the color of the minor ticks of the Y-axis.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>Boxplot Axis Information</title>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ Signature
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_label</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the label of the X-axis. It will be shown <emphasis role="bold">only
+ if</emphasis> <code><phrase role="identifier">x_label</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">true</phrase><phrase
+ role="special">)</phrase></code>.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_tick_length</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the length (pixels) of the X-axis ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">x_tick_width</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the width (pixels) of the major ticks on the X-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_label</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase
+ role="special">::</phrase><phrase role="identifier">string</phrase><phrase
+ role="special">&amp;)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the label of the X-axis. It will be shown <emphasis role="bold">only
+ if</emphasis> <code><phrase role="identifier">x_label</phrase><phrase
+ role="special">(</phrase><phrase role="keyword">true</phrase><phrase
+ role="special">)</phrase></code>.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_interval</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">double</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the distance (in Cartesian units) between ticks on the Y-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_tick_length</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the length (pixels) of the Y-axis major ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_tick_width</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the width (pixels) of the major ticks on the Y-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_num_minor_tick</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the length (pixels) of the Y-axis minor ticks.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_major_tick_length</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the length (pixels) of the Y-axis minor tick lengths.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_minor_tick_width</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">unsigned</phrase> <phrase role="keyword">int</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the width (pixels) of the minor ticks on the Y-axis.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_num_minor_ticks</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">int</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the number of minor ticks between each major tick.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ <code><phrase role="identifier">svg_boxplot</phrase><phrase role="special">&amp;</phrase>
+ <phrase role="identifier">y_range</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">double</phrase> <phrase role="identifier">y1</phrase><phrase
+ role="special">,</phrase> <phrase role="keyword">double</phrase>
+ <phrase role="identifier">y2</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Sets the scale of the Y-axis from y1 to y2. Throws an exception if
+ y2 &lt;= y1.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <para>
+ (Note: Getters omitted for now - TODO)
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.interface.svg_boxplot_interface.the__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method"/>
+ <bridgehead renderas="sect5">
+ <link linkend="svg_plot.svg_simple_code_example.interface.svg_boxplot_interface.the__code__phrase_role__identifier__plot__phrase__phrase_role__special______phrase___code__method">The
+ <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
+ Method</link>
+ </bridgehead>
+ <para>
+ The <code><phrase role="identifier">plot</phrase><phrase role="special">()</phrase></code>
+ method is defined using Boost.Parameter. As such, it supports a few extra
+ named parameters, as well as a deduced parameter.
+ </para>
+ <table frame="all"> <title>Required parameter</title>
+ <tgroup cols="3">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ ID
+ </para>
+ </entry><entry>
+ <para>
+ Type (* is a wildcard)
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ ctr
+ </para>
+ </entry><entry>
+ <para>
+ *
+ </para>
+ </entry><entry>
+ <para>
+ Any object that can return an iterator with begin() and end().
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ name
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase
+ role="identifier">string</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ The name of this data series.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table> <table frame="all"> <title>Optional Parameters</title>
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>
+ <para>
+ ID
+ </para>
+ </entry><entry>
+ <para>
+ Type
+ </para>
+ </entry><entry>
+ <para>
+ Description
+ </para>
+ </entry><entry>
+ <para>
+ Default
+ </para>
+ </entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>
+ <para>
+ box_style
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">svg_style</phrase><phrase
+ role="special">&amp;</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Styles the box of the boxplot.
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">svg_style</phrase><phrase role="special">(</phrase><phrase
+ role="identifier">white</phrase><phrase role="special">,</phrase>
+ <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
+ <phrase role="number">1</phrase><phrase role="special">)</phrase></code>.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ median_style
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">svg_style</phrase><phrase
+ role="special">&amp;</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Styles the median of the boxplot.
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">svg_style</phrase><phrase role="special">(</phrase><phrase
+ role="identifier">white</phrase><phrase role="special">,</phrase>
+ <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
+ <phrase role="number">1</phrase><phrase role="special">)</phrase></code>.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ axis_style
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">svg_style</phrase><phrase
+ role="special">&amp;</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Styles the data range line (the line going through the middle.
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">svg_style</phrase><phrase role="special">(</phrase><phrase
+ role="identifier">white</phrase><phrase role="special">,</phrase>
+ <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
+ <phrase role="number">1</phrase><phrase role="special">)</phrase></code>.
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ min_whisker_style
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">svg_style</phrase><phrase
+ role="special">&amp;</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Styles the lower whisker.
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">svg_style</phrase><phrase role="special">(</phrase><phrase
+ role="identifier">white</phrase><phrase role="special">,</phrase>
+ <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
+ <phrase role="number">1</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ max_whisker_style
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">svg_style</phrase><phrase
+ role="special">&amp;</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Styles the upper whisker.
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">svg_style</phrase><phrase role="special">(</phrase><phrase
+ role="identifier">white</phrase><phrase role="special">,</phrase>
+ <phrase role="identifier">black</phrase><phrase role="special">,</phrase>
+ <phrase role="number">1</phrase><phrase role="special">)</phrase></code>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ mild_outlier_style
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">plot_point_style</phrase><phrase
+ role="special">&amp;</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Styles outliers within 3 Inter-Quartile Ranges (IQRs) of the edges
+ of the box
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">plot_point_style</phrase><phrase
+ role="special">(</phrase><phrase role="identifier">black</phrase><phrase
+ role="special">,</phrase> <phrase role="identifier">black</phrase><phrase
+ role="special">,</phrase> <phrase role="number">0</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ ext_outlier_style
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="keyword">const</phrase> <phrase role="identifier">plot_point_style</phrase><phrase
+ role="special">&amp;</phrase></code>
+ </para>
+ </entry><entry>
+ <para>
+ Styles outliers more than 3 IQRs away from the box.
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">plot_point_style</phrase><phrase
+ role="special">(</phrase><phrase role="identifier">white</phrase><phrase
+ role="special">,</phrase> <phrase role="identifier">black</phrase><phrase
+ role="special">,</phrase> <phrase role="number">1</phrase><phrase
+ role="special">)</phrase></code>
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ whisker_length
+ </para>
+ </entry><entry>
+ <para>
+ unsigned int
+ </para>
+ </entry><entry>
+ <para>
+ Determines how long the whiskers at the end of the data range line
+ will be
+ </para>
+ </entry><entry>
+ <para>
+ 30
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ box_width
+ </para>
+ </entry><entry>
+ <para>
+ unsigned int
+ </para>
+ </entry><entry>
+ <para>
+ Determines the width of the box.
+ </para>
+ </entry><entry>
+ <para>
+ 60
+ </para>
+ </entry>
+ </row>
+ <row>
+ <entry>
+ <para>
+ functor
+ </para>
+ </entry><entry>
+ <para>
+ *
+ </para>
+ </entry><entry>
+ <para>
+ A class or that contains a conversion function. You will not have
+ to worry about this, unless you are trying to accomplish stuff like
+ plotting a container of a user-defined class, for example human,
+ that does not have a conversion to double. For example:
 <programlisting>
 <phrase role="keyword">class</phrase> <phrase role="identifier">my_functor</phrase>
 <phrase role="special">{</phrase>
- <phrase role="identifier">typdef</phrase> <phrase role="keyword">double</phrase> <phrase role="identifier">result_type</phrase><phrase role="special">;</phrase>
+ <phrase role="identifier">typdef</phrase> <phrase role="keyword">double</phrase> <phrase role="identifier">result_type</phrase><phrase role="special">;</phrase>
 
- <phrase role="keyword">double</phrase> <phrase role="keyword">operator</phrase><phrase role="special">()(</phrase><phrase role="keyword">const</phrase> <phrase role="identifier">human</phrase><phrase role="special">&amp;</phrase> <phrase role="identifier">_hum</phrase><phrase role="special">)</phrase> <phrase role="keyword">const</phrase>
- <phrase role="special">{</phrase>
- <phrase role="keyword">return</phrase> <phrase role="keyword">double</phrase><phrase role="special">(</phrase><phrase role="identifier">_hum</phrase><phrase role="special">.</phrase><phrase role="identifier">age</phrase><phrase role="special">());</phrase>
- <phrase role="special">}</phrase>
+ <phrase role="keyword">double</phrase> <phrase role="keyword">operator</phrase><phrase role="special">()(</phrase><phrase role="keyword">const</phrase> <phrase role="identifier">human</phrase><phrase role="special">&amp;</phrase> <phrase role="identifier">body</phrase><phrase role="special">)</phrase> <phrase role="keyword">const</phrase>
+ <phrase role="special">{</phrase>
+ <phrase role="keyword">return</phrase> <phrase role="keyword">double</phrase><phrase role="special">(</phrase><phrase role="identifier">body</phrase><phrase role="special">.</phrase><phrase role="identifier">age</phrase><phrase role="special">());</phrase>
+ <phrase role="special">}</phrase>
 <phrase role="special">}</phrase>
 
-<phrase role="comment">// snip
+<phrase role="comment">// ...
 </phrase>
-<phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;Lions&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">functor</phrase> <phrase role="special">=</phrase> <phrase role="identifier">my_functor</phrase><phrase role="special">());</phrase>
+<phrase role="identifier">plot</phrase><phrase role="special">(</phrase><phrase role="identifier">my_data</phrase><phrase role="special">,</phrase> <phrase role="string">&quot;People&quot;</phrase><phrase role="special">,</phrase> <phrase role="identifier">functor</phrase> <phrase role="special">=</phrase> <phrase role="identifier">my_functor</phrase><phrase role="special">());</phrase>
 </programlisting>
- </para>
- </entry><entry>
- <para>
- <code><phrase role="identifier">boost_default_convert</phrase></code>
- (the default) is sufficient in all cases where the data stored in the
- container can be directly casted to a double
- </para>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </table>
+ </para>
+ </entry><entry>
+ <para>
+ <code><phrase role="identifier">boost_default_convert</phrase></code>
+ (default) is sufficient in all cases where the data stored in the
+ container can be directly cast to a double.
+ </para>
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </section>
     </section>
- </section>
- <section id="svg_plot.acknowledgements">
- <title><link linkend="svg_plot.acknowledgements"> Acknowledgements</link></title>
- <para>
- I would like to thank the following people:
- </para>
- <itemizedlist>
- <listitem>
- <emphasis role="bold">Google</emphasis>: For offering Summer of Code, and
- giving me the opportunity to do something I never would have done otherwise.
- </listitem>
- <listitem>
- <emphasis role="bold">Joaquín Mª López Muñoz</emphasis>: My GSoC mentor.
- His proofreading and advice helped shape the project into what it is today,
- and prevented small problems from becoming major problems.
- </listitem>
- <listitem>
- <emphasis role="bold">Paul Bristow</emphasis>: For showing an active interest,
- offering literally dozens of minor and major features he'd like to see, and
- for helping with Boost.Build.
- </listitem>
- <listitem>
- <emphasis role="bold">Matias Capeletto</emphasis>: For showing an active
- interest, and offering feature suggestions.
- </listitem>
- <listitem>
- <emphasis role="bold">Sarah Braun</emphasis>: For helping me pick colors
- for examples.
- </listitem>
- <listitem>
- <emphasis role="bold">Boost Community</emphasis>: For all of the encouragement,
- suggestions, disagreements, and patience.
- </listitem>
- </itemizedlist>
- </section>
-</article>
+ <section id="svg_plot.svg_simple_code_example.implementation">
+ <title><link linkend="svg_plot.svg_simple_code_example.implementation"> Implementation
+ &amp; Rationale</link></title> <anchor id="svg_plot.svg_simple_code_example.implementation.number_of__minor_ticks"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.implementation.number_of__minor_ticks">Number
+ of Minor ticks</link>
+ </bridgehead>
+ <para>
+ <code><phrase role="identifier">x_num_minor_ticks</phrase><phrase role="special">()</phrase></code>
+ and <code><phrase role="identifier">x_num_minor_ticks</phrase><phrase role="special">()</phrase></code>
+ </para>
+ <para>
+ are provided control the number of minor ticks between the major ticks.
+ </para>
+ <para>
+ There are a total of x_num_minor_ticks + 1 ticks for each major tick, for
+ example, a major on 0, minor on 1,2,3,4, major on 5 ...
+ </para>
+ <para>
+ For integer usually binary, octal and hexadecimal, num_minor_ticks = 2[super]n
+ -1 are useful, for example 1 if major ticks are even will give minor ticks
+ on odd values), 3 if major on 0, minor on 1, 2, 3 and major on 4... 7 if
+ major on 0, minor on 1,2,3,4,5,6,7 and major on 8 ... 15 if major on 0, minor
+ on 1,2,3,4,5,6,7, 8,9,A,B,C,D,E,F, major on 0x10...
+ </para>
+
+<programlisting>
+<phrase role="identifier">For</phrase> <phrase role="identifier">decimal</phrase> <phrase role="identifier">based</phrase> <phrase role="identifier">values</phrase><phrase role="special">,</phrase> <phrase role="identifier">num_minor_ticks</phrase> <phrase role="number">1</phrase><phrase role="special">,</phrase> <phrase role="number">4</phrase><phrase role="special">,</phrase> <phrase role="number">9</phrase> <phrase role="identifier">are</phrase> <phrase role="identifier">useful</phrase><phrase role="special">,</phrase> <phrase role="keyword">for</phrase> <phrase role="identifier">example</phrase><phrase role="special">:</phrase>
+<phrase role="number">1</phrase> <phrase role="keyword">if</phrase> <phrase role="identifier">major</phrase> <phrase role="identifier">are</phrase> <phrase role="identifier">even</phrase><phrase role="special">,</phrase> <phrase role="identifier">major</phrase> <phrase role="number">0</phrase><phrase role="special">,</phrase> <phrase role="identifier">minor</phrase> <phrase role="number">1</phrase><phrase role="special">,</phrase> <phrase role="identifier">major</phrase> <phrase role="number">2</phrase> <phrase role="special">...</phrase>
+<phrase role="number">4</phrase> <phrase role="keyword">if</phrase> <phrase role="identifier">major</phrase> <phrase role="identifier">on</phrase> <phrase role="number">0</phrase><phrase role="special">,</phrase> <phrase role="identifier">minor</phrase> <phrase role="identifier">on</phrase> <phrase role="number">1</phrase><phrase role="special">,</phrase><phrase role="number">2</phrase><phrase role="special">,</phrase><phrase role="number">3</phrase><phrase role="special">,</phrase><phrase role="number">4</phrase><phrase role="special">,</phrase> <phrase role="identifier">major</phrase> <phrase role="identifier">on</phrase> <phrase role="number">5</phrase> <phrase role="special">...</phrase>
+<phrase role="number">9</phrase> <phrase role="keyword">if</phrase> <phrase role="identifier">major</phrase> <phrase role="identifier">on</phrase> <phrase role="number">0</phrase><phrase role="special">,</phrase> <phrase role="identifier">minor</phrase> <phrase role="identifier">on</phrase> <phrase role="number">1</phrase><phrase role="special">,</phrase><phrase role="number">2</phrase><phrase role="special">,</phrase><phrase role="number">3</phrase><phrase role="special">,</phrase><phrase role="number">4</phrase><phrase role="special">,</phrase><phrase role="number">5</phrase><phrase role="special">,</phrase><phrase role="number">6</phrase><phrase role="special">,</phrase><phrase role="number">7</phrase><phrase role="special">,</phrase><phrase role="number">8</phrase><phrase role="special">,</phrase><phrase role="number">9</phrase><phrase role="special">,</phrase> <phrase role="identifier">major</phrase> <phrase role="identifier">on</phrase> <phrase role="number">10</phrase>
+</programlisting>
+ <para>
+ This section provide more information about this implementation and some
+ of the rationale for desing decisions.
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.implementation.svg_specification"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.implementation.svg_specification">SVG
+ Specification</link>
+ </bridgehead>
+ <para>
+ <ulink url="http://www.w3.org/TR/SVG/">SVG version 1.1</ulink> was used in
+ the design of this version but <ulink url="http://www.w3.org/TR/SVG12/">SVG
+ 1.2 draft specification</ulink> is also available and appears to be final
+ and designed to be backward compatible. No changes that affect the code produced
+ have been detected from a quick perusal of this document. It is probable
+ but untested that the svg files produced will also comply with the <ulink
+ url="http://www.w3.org/TR/SVGMobile12/">Tiny svg for mobiles specification</ulink>.
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.implementation.design"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.implementation.design">Design</link>
+ </bridgehead>
+ <para>
+ SVG would be a flat format if it weren't for the &lt;g&gt; elements: these
+ make it parse into a tree.
+ </para>
+ <para>
+ If each element has its own style (fill, stroke etc) then the .svg file size
+ would be increased. (This style is used by other packages that output svg).
+ </para>
+ <para>
+ So the <ulink url="http://www.w3.org/TR/SVG/struct.html#GElement">group element</ulink>
+ is used with each type given an id to allow reference back to it.
+ </para>
+ <para>
+ svg_style_details.hpp contains a list of these groups, for example: PLOT_X_AXIS,
+ PLOT_TITLE... indexing an array of string document id &quot;yAxis&quot;,
+ &quot;title&quot;...
+ </para>
+ <para>
+ and these can be seen, with style information in the output, for example:
+ </para>
+
+<programlisting>
+<phrase role="special">&lt;</phrase><phrase role="identifier">g</phrase> <phrase role="identifier">id</phrase><phrase role="special">=</phrase><phrase role="string">&quot;yAxis&quot;</phrase> <phrase role="identifier">stroke</phrase><phrase role="special">=</phrase><phrase role="string">&quot;rgb(0,0,0)&quot;</phrase><phrase role="special">&gt;&lt;/</phrase><phrase role="identifier">g</phrase><phrase role="special">&gt;</phrase>
+
+<phrase role="special">&lt;</phrase><phrase role="identifier">g</phrase> <phrase role="identifier">id</phrase><phrase role="special">=</phrase><phrase role="string">&quot;title&quot;</phrase><phrase role="special">&gt;</phrase>
+<phrase role="special">&lt;</phrase><phrase role="identifier">text</phrase> <phrase role="identifier">x</phrase><phrase role="special">=</phrase><phrase role="string">&quot;250&quot;</phrase> <phrase role="identifier">y</phrase><phrase role="special">=</phrase><phrase role="string">&quot;20&quot;</phrase> <phrase role="identifier">text</phrase><phrase role="special">-</phrase><phrase role="identifier">anchor</phrase><phrase role="special">=</phrase><phrase role="string">&quot; middle&quot;</phrase> <phrase role="identifier">font</phrase><phrase role="special">-</phrase><phrase role="identifier">size</phrase><phrase role="special">=</phrase><phrase role="string">&quot;20&quot;</phrase><phrase role="special">&gt;</phrase><phrase role="identifier">Demo</phrase> <phrase role="number">1D</phrase> <phrase role="identifier">plot</phrase><phrase role="special">&lt;/</phrase><phrase role="identifier">text</phrase><phrase role="special">&gt;&lt;/</phrase><phrase role="identifier">g</phrase><phrase role="special">&gt;
</phrase>
+</programlisting>
+ <para>
+ In the general case, the most that occurs grouped together is the style information:
+ axis lines all share the same style information, points in a series all share
+ the same color information, and this is also a logical grouping. One can
+ can add a series, and then come back later and change the &lt;g&gt; element
+ above the points, which is a single change, and have the change reflected
+ on every point in the series. It seems this is the most logical way to represent
+ the data in memory.
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.implementation.economising_on__svg_file_size"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.implementation.economising_on__svg_file_size">Economising
+ on .svg File Size</link>
+ </bridgehead>
+ <para>
+ Some of the factors affecting the file size are:
+ </para>
+ <orderedlist>
+ <listitem>
+ Excessive precision of data points.
+ </listitem>
+ </orderedlist>
+ <para>
+ If plots are to be viewed only at a modest size, then the precision of x
+ and y coordinates does not need to be higher than about 1 in 1000, so a precision
+ of about 3 decimal digits will suffice.
+ </para>
+ <para>
+ A default of 3 decimal digits has been chosen, but the precision can be controlled
+ to permit a higher resolution, for example on a map that is printed at 2000
+ dpi. or even only 2 decimal digits for a display on a mobile, where file
+ transfer speed may make reducing file size important.
+ </para>
+ <orderedlist>
+ <listitem>
+ Excessive data points. When plotting functions, it is sensible to avoid
+ using more data points than are justified by the resolution. Again 1 in
+ 1000 is a typical number, and by using bezier curve fitting, as few as
+ 100 points should be sufficient to produce a visibly perfectly smooth curve
+ for 'well-behaved' functions.
+ </listitem>
+ </orderedlist>
+ <para>
+ Plotting extremely large datasets from files may cause memory overflow, as
+ with any STL container held in memory. It may be necessary to perform some
+ averaging or smoothing, or just using a 'stride' to select, for example,
+ every 100th value to be plotted.
+ </para>
+ <orderedlist>
+ <listitem>
+ Redundant style specifications.
+ </listitem>
+ </orderedlist>
+ <para>
+ The use of the g or group element has been used to try to reduce repeated
+ (and thus redundant) style specifications. More efficient use of groups may
+ be possible.
+ </para>
+ <orderedlist>
+ <listitem>
+ Not using default style and attributes where possible.
+ </listitem>
+ </orderedlist>
+ <para>
+ Some effort has been made to use defaults, but more may be possible.
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.implementation.adding_document_information_to_the_svg_image_files"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.implementation.adding_document_information_to_the_svg_image_files">Adding
+ document information to the svg Image files</link>
+ </bridgehead>
+ <para>
+ Several ways of adding useful information to the svg document are provided.
+ If the strings are null (the default) nothing is output.
+ </para>
+ <para>
+ Member function svg&amp; description(const std::string) allows output like:
+ </para>
+
+<programlisting>
+<phrase role="special">&lt;</phrase><phrase role="identifier">desc</phrase><phrase role="special">&gt;</phrase><phrase role="identifier">My</phrase> <phrase role="identifier">Document</phrase> <phrase role="identifier">description</phrase><phrase role="special">&lt;/</phrase><phrase role="identifier">desc</phrase><phrase role="special">&gt;</phrase>
+
+<phrase role="identifier">svg</phrase><phrase role="special">&amp;</phrase> <phrase role="identifier">document_title</phrase><phrase role="special">(</phrase><phrase role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase><phrase role="special">)</phrase>
+
+<phrase role="special">&lt;</phrase><phrase role="identifier">title</phrase><phrase role="special">&gt;</phrase><phrase role="identifier">My</phrase> <phrase role="identifier">Document</phrase> <phrase role="identifier">title</phrase><phrase role="special">&lt;/</phrase><phrase role="identifier">title</phrase><phrase role="special">&gt;</phrase>
+</programlisting>
+ <para>
+ (Note that this is <emphasis role="bold">not</emphasis> the same as the title
+ of the plot.)
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.implementation.adding_copyright_and_license_conditions_for_the_svg_image_files"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.implementation.adding_copyright_and_license_conditions_for_the_svg_image_files">Adding
+ Copyright and License conditions for the SVG Image files</link>
+ </bridgehead>
+ <para>
+ In general, setting values for items like copyright_holder will ensure that
+ they appear in the SVG document both as XML and as XML comment. If none are
+ set, nothing will be output, to minimize file size.
+ </para>
+ <para>
+ <ulink url="http://www.w3.org/TR/2004/WD-SVG12-20041027/nonvisual.html">www.w3.org/TR/2004/WD-SVG12-20041027</ulink>
+ discusses primary documents, of type .svg in section 17.3 Adding Copyright
+ information to an SVG document: SVG encourages the use of a common metadata
+ format for inclusion of copyright information. Metadata relevant to the data
+ copyright of the entire document should be added to metadata element of the
+ topmost svg element. This allows the author to unambiguously state the licensing
+ terms for the entire document. The scheme may also be used elsewhere in the
+ document, for pieces that have different licensing. For example, an SVG font
+ may have specific licensing details expressed in its own metadata element.
+ </para>
+ <para>
+ Note that inclusion of this metadata does not provide the author with a method
+ in which to protect or enforce their copyright, it simply bundles the copyright
+ information with the content in a defined manner. Providing methods, technical
+ or non-technical, for data protection is currently beyond the scope of the
+ SVG specification.
+ </para>
+ <para>
+ This does not exclude the use of other metadata schemes.
+ </para>
+ <para>
+ A simple way of adding metadata for copyright is provided by functions to
+ set
+ </para>
+
+<programlisting>
+<phrase role="identifier">copyright_holder</phrase><phrase role="special">(</phrase><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase><phrase role="special">);</phrase>
+<phrase role="identifier">copyright_date</phrase><phrase role="special">(</phrase><phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase><phrase role="special">);</phrase>
+</programlisting>
+ <para>
+ (as well as description and document_title, and .svg filename if any).
+ </para>
+ <para>
+ For example, setting these will incorporate an XML comment
+ </para>
+
+<programlisting>
+<phrase role="special">&lt;!--</phrase> <phrase role="identifier">SVG</phrase> <phrase role="identifier">Plot</phrase> <phrase role="identifier">Copyright</phrase> <phrase role="identifier">Paul</phrase> <phrase role="identifier">A</phrase><phrase role="special">.</phrase> <phrase role="identifier">Bristow</phrase> <phrase role="number">2007</phrase> <phrase role="special">--&gt;</phrase>
+</programlisting>
+ <para>
+ and also as meta data:
+ </para>
+
+<programlisting>
+<phrase role="special">&lt;</phrase><phrase role="identifier">meta</phrase> <phrase role="identifier">name</phrase><phrase role="special">=</phrase><phrase role="string">&quot;copyright&quot;</phrase> <phrase role="identifier">content</phrase><phrase role="special">=</phrase><phrase role="string">&quot;Paul A. Bristow&quot;</phrase> <phrase role="special">/&gt;</phrase>
+<phrase role="special">&lt;</phrase><phrase role="identifier">meta</phrase> <phrase role="identifier">name</phrase><phrase role="special">=</phrase><phrase role="string">&quot;date&quot;</phrase> <phrase role="identifier">content</phrase><phrase role="special">=</phrase><phrase role="string">&quot;2007&quot;</phrase> <phrase role="special">/&gt;</phrase>
+</programlisting>
+ <para>
+ The Creative Commons Metadata Set is also provided as an option in this implementation,
+ following <ulink url="http://www.ibm.com/developerworks/xml/library/x-think18.html">this
+ example.</ulink>
+ </para>
+ <para>
+ The <ulink url="http://creativecommons.org/about/licenses">Creative Commons
+ License</ulink> is one method of providing license terms in a machine-readable
+ format.
+ </para>
+ <para>
+ Typical data added to the file would be XML like this:
+ </para>
+
+<programlisting>
+<phrase role="special">&lt;</phrase><phrase role="identifier">metadata</phrase><phrase role="special">&gt;</phrase>
+ <phrase role="special">&lt;</phrase><phrase role="identifier">rdf</phrase><phrase role="special">:</phrase><phrase role="identifier">RDF</phrase> <phrase role="identifier">xmlns</phrase><phrase role="special">:</phrase><phrase role="identifier">cc</phrase><phrase role="special">=</phrase><phrase role="string">&quot;http://web.resource.org/cc/&quot;>
+ <phrase role="identifier">xmlns</phrase><phrase role="special">:</phrase><phrase role="identifier">dc</phrase><phrase role="special">=</phrase><phrase role="string">&quot;
http://purl.org/dc/elements/1.1/&quot;>
+ <phrase role="identifier">xmlns</phrase><phrase role="special">:</phrase><phrase role="identifier">rdf</phrase><phrase role="special">=</phrase><phrase role="string">&quot;
http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;><phrase role="special">&gt;</phrase>
+ <phrase role="special">&lt;</phrase><phrase role="identifier">cc</phrase><phrase role="special">:</phrase><phrase role="identifier">work</phrase> <phrase role="identifier">rdf</phrase><phrase role="special">:</phrase><phrase role="identifier">about</phrase><phrase role="special">=</phrase><phrase role="string">&quot;filename.svg&quot;</phrase><phrase role="special">&gt;</phrase>
+ <phrase role="special">&lt;!--</phrase> <phrase role="identifier">insert</phrase> <phrase role="identifier">filename</phrase> <phrase role="keyword">or</phrase> <phrase role="identifier">title</phrase> <phrase role="identifier">here</phrase> <phrase role="special">--&gt;</phrase>
+ <phrase role="special">&lt;</phrase><phrase role="identifier">dc</phrase><phrase role="special">:</phrase><phrase role="identifier">title</phrase><phrase role="special">&gt;</phrase><phrase role="identifier">Plot</phrase> <phrase role="identifier">title</phrase><phrase role="special">&lt;/</phrase><phrase role="identifier">dc</phrase><phrase role="special">:</phrase><phrase role="identifier">title</phrase><phrase role="special">&gt;</phrase>
+ <phrase role="special">&lt;</phrase><phrase role="identifier">dc</phrase><phrase role="special">:</phrase><phrase role="identifier">creator</phrase><phrase role="special">&gt;</phrase><phrase role="identifier">Boost</phrase><phrase role="special">.</phrase><phrase role="identifier">Plot</phrase><phrase role="special">&lt;/</phrase><phrase role="identifier">dc</phrase><phrase role="special">:</phrase><phrase role="identifier">creator</phrase><phrase role="special">&gt;</phrase>
+ <phrase role="special">&lt;</phrase><phrase role="identifier">dc</phrase><phrase role="special">:</phrase><phrase role="identifier">author</phrase><phrase role="special">&gt;</phrase><phrase role="identifier">Paul</phrase> <phrase role="identifier">A</phrase><phrase role="special">.</phrase> <phrase role="identifier">Bristow</phrase><phrase role="special">&lt;/</phrase><phrase role="identifier">dc</phrase><phrase role="special">:</phrase><phrase role="identifier">author</phrase><phrase role="special">&gt;</phrase>
+ <phrase role="special">&lt;</phrase><phrase role="identifier">dc</phrase><phrase role="special">:</phrase><phrase role="identifier">format</phrase><phrase role="special">&gt;</phrase><phrase role="identifier">application</phrase><phrase role="special">/</phrase><phrase role="identifier">xhtml</phrase><phrase role="special">+</phrase><phrase role="identifier">xml</phrase><phrase role="special">+</phrase><phrase role="identifier">svg</phrase><phrase role="special">&lt;/</phrase><phrase role="identifier">dc</phrase><phrase role="special">:</phrase><phrase role="identifier">format</phrase><phrase role="special">&gt;</phrase>
+ <phrase role="special">&lt;</phrase><phrase role="identifier">cc</phrase><phrase role="special">:</phrase><phrase role="identifier">license</phrase> <phrase role="identifier">rdf</phrase><phrase role="special">:</phrase><phrase role="identifier">about</phrase><phrase role="special">=</phrase><phrase role="string">&quot;
http://creativecommons.org/licenses/by-sa/.0/&quot;><phrase role="special">&gt;</phrase>
+ <phrase role="special">&lt;</phrase><phrase role="identifier">cc</phrase><phrase role="special">:</phrase><phrase role="identifier">requires</phrase> <phrase role="identifier">rdf</phrase><phrase role="special">:</phrase><phrase role="identifier">resource</phrase><phrase role="special">=</phrase><phrase role="string">&quot;
http://web.resource.org/cc/Notice&quot;><phrase role="special">/&gt;</phrase>
+ <phrase role="special">&lt;</phrase><phrase role="identifier">cc</phrase><phrase role="special">:</phrase><phrase role="identifier">permits</phrase> <phrase role="identifier">rdf</phrase><phrase role="special">:</phrase><phrase role="identifier">resource</phrase><phrase role="special">=</phrase><phrase role="string">&quot;
http://web.resource.org/cc/Reproduction&quot;><phrase role="special">/&gt;</phrase>
+ <phrase role="special">&lt;</phrase><phrase role="identifier">cc</phrase><phrase role="special">:</phrase><phrase role="identifier">permits</phrase> <phrase role="identifier">rdf</phrase><phrase role="special">:</phrase><phrase role="identifier">resource</phrase><phrase role="special">=</phrase><phrase role="string">&quot;
http://web.resource.org/cc/Distribution&quot;><phrase role="special">/&gt;</phrase>
+ <phrase role="special">&lt;</phrase><phrase role="identifier">cc</phrase><phrase role="special">:</phrase><phrase role="identifier">requires</phrase> <phrase role="identifier">rdf</phrase><phrase role="special">:</phrase><phrase role="identifier">resource</phrase><phrase role="special">=</phrase><phrase role="string">&quot;
http://web.resource.org/cc/Attribution&quot;><phrase role="special">/&gt;</phrase>
+ <phrase role="special">&lt;</phrase><phrase role="identifier">cc</phrase><phrase role="special">:</phrase><phrase role="identifier">permits</phrase> <phrase role="identifier">rdf</phrase><phrase role="special">:</phrase><phrase role="identifier">resource</phrase><phrase role="special">=</phrase><phrase role="string">&quot;
http://web.resource.org/cc/CommercialUse&quot;><phrase role="special">/&gt;</phrase>
+ <phrase role="special">&lt;/</phrase><phrase role="identifier">cc</phrase><phrase role="special">:</phrase><phrase role="identifier">license</phrase><phrase role="special">&gt;</phrase>
+ <phrase role="special">&lt;/</phrase><phrase role="identifier">cc</phrase><phrase role="special">:</phrase><phrase role="identifier">work</phrase><phrase role="special">&gt;</phrase>
+ <phrase role="special">&lt;/</phrase><phrase role="identifier">rdf</phrase><phrase role="special">:</phrase><phrase role="identifier">RDF</phrase><phrase role="special">&gt;</phrase>
+<phrase role="special">&lt;/</phrase><phrase role="identifier">metadata</phrase><phrase role="special">&gt;</phrase>
+</programlisting>
+ <para>
+ cc:permits can also be cc:requires or cc:prohibits, as required.
+ </para>
+ <para>
+ A license that permits reproduction, distribution and commercial use, but
+ requires both notice &amp; attribution is probably most suitable for Boost
+ documents as is therefore chosen as the default.
+ </para>
+ <para>
+ This license can be included by calling svg member function <code><phrase
+ role="identifier">is_license</phrase><phrase role="special">(</phrase><phrase
+ role="keyword">true</phrase><phrase role="special">)</phrase></code>. If
+ this license will be included can be discovered by calling svg member function
+ <code><phrase role="identifier">is_license</phrase><phrase role="special">()</phrase></code>.
+ </para>
+ <para>
+ Similarly functions const std::string license_reproduction();` const std::string
+ license_distribution(); const std::string license_attribution(); const std::string
+ license_commercialuse() allow you to find the current license requirements.
+ </para>
+ <para>
+ <ulink url="
http://web.resource.org/rss/1.0/modules/cc/">RDF</ulink> is the
+ metadata format chosen by <ulink url="http://creativecommons.org">Creative
+ Commons</ulink>.
+ </para>
+ <para>
+ and references the resource (cc) at <ulink url="http://web.resource.org/cc/">http://web.resource.org/cc/>
+ using the definition of its XML namespace:
+ </para>
+
+<programlisting>
+<phrase role="identifier">rdf</phrase><phrase role="special">:</phrase><phrase role="identifier">RDF</phrase> <phrase role="identifier">xmlns</phrase><phrase role="special">:</phrase><phrase role="identifier">cc</phrase><phrase role="special">=</phrase><phrase role="string">&quot;
http://web.resource.org/cc/&quot;>
+</programlisting>
+ <para>
+ Options are <ulink url="
http://web.resource.org/rss/1.0/modules/cc/">summarized</ulink>.
+ </para>
+ <para>
+ A way of seting the author is also provided, in case the copyright has been
+ assigned to someone else, for example a publisher. svg set and get member
+ functions:
+ </para>
+
+<programlisting>
+<phrase role="identifier">author</phrase><phrase role="special">(</phrase><phrase role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase><phrase role="special">);</phrase>
+<phrase role="keyword">const</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">string</phrase> <phrase role="identifier">author</phrase><phrase role="special">();</phrase>
+</programlisting>
+ <anchor id="svg_plot.svg_simple_code_example.implementation.using_unicode_symbols__usually_math_sumbols_and_greek_letters_"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.implementation.using_unicode_symbols__usually_math_sumbols_and_greek_letters_">Using
+ Unicode Symbols (usually Math Sumbols and Greek letters)</link>
+ </bridgehead>
+ <para>
+ Unicode symbols that work on most browsers in html are listed at:
+ </para>
+ <para>
+ <ulink url="boost\math_toolkit\libs\math\doc\sf_and_dist\html4_symbols.qbk">html4_symbols</ulink>,
+ <ulink url="http://www.htmlhelp.com/reference/html40/entities/symbols.html">reference/html40/entities/symbols</ulink>,
+ and <ulink url="http://www.alanwood.net/demos/ent4_frame.html">demos</ulink>.
+ </para>
+ <para>
+ However support for Unicode in SVG is much less fully implemented and displayed
+ results are variable.
+ </para>
+ <para>
+ The Unicode value in decimal 9830 or hex x2666 must be prefixed with <code><phrase
+ role="special">&amp;</phrase> </code>and terminated with <code><phrase role="special">;</phrase></code>
+ for example, <code><phrase role="special">&amp;</phrase><phrase role="identifier">x2666</phrase></code>;
+ for xml and then enveloped with &quot;&quot; to convert to a const std::string,
+ for example: &quot;&amp;#x2666;&quot; for diamond.
+ </para>
+ <para>
+ Thus diamond can be used a point marker.
+ </para>
+ <para>
+ Similarly for greek in title, legend and axes:
+ </para>
+
+<programlisting>
+<phrase role="special">.</phrase><phrase role="identifier">legend_title</phrase><phrase role="special">(</phrase><phrase role="string">&quot;My Legend &amp;#956;&quot;</phrase><phrase role="special">)</phrase> <phrase role="comment">// generates &lt;em&gt;&amp;#956;&lt;/em&gt; greek mu
+</phrase></programlisting>
+ <anchor id="svg_plot.svg_simple_code_example.implementation.subscript_and_superscript_in_title__legend_and_labels"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.implementation.subscript_and_superscript_in_title__legend_and_labels">Subscript
+ and superscript in title, legend and labels</link>
+ </bridgehead>
+ <para>
+ It is very common need to show superscript, in units for example, area (m[super
+ 2]), and subscript for a[sub 0, a[sub 2]...
+ </para>
+ <para>
+ Sadly, although these needs are both OK with html, showing sub and superscripts
+ in svg doesn't work well as yet because browsers don't handle &lt;sub&gt;
+ or &lt;sup&gt;, nor baseline-shift.
+ </para>
+ <para>
+ The only reasonably widely supported feature is Unicode symbols for superscript
+ 1, 2 and 3 (only). For example, Latin1_symbols: sup1 &amp;185; sup2 &amp;178;
+ sup3 &amp;179; work on Firefox &amp; IE6/7.
+ </para>
+ <para>
+ But&amp;#2071; &amp;#2075; &amp;#2090; - show just square boxes.
+ </para>
+ <para>
+ The SVG specification covers &lt;sub, &lt;super&gt;, and the general baseline-shift,
+ but these are just not implemented yet.
+ </para>
+ <para>
+ <ulink url="http://unicode.org/reports/tr25/#_Toc28">2.8 Superscripts and
+ Subscripts</ulink> <ulink url="http://www.unicode.org/charts/symbols.html">symbols</ulink>
+ </para>
+ <para>
+ At Nov 2007, the following commands don't have very useful coverage. &lt;tspan
+ baseline-shift = "50%" font-stretch = "wider" font-variant = "small-caps"
+ &gt; 3 &lt;/tspan&gt; baseline-shift = "50%" &amp; super and subscript down't
+ work on Firefox 2. but DO on IE6 (and probably 7) font-stretch = "wider"
+ No effect Firefox or IE6. font-variant = "small-caps" No effect Firefox or
+ IE6. &lt;tspan baseline-shift = "50%" &gt;3/4 &lt;/tspan&gt;
+ </para>
+ <para>
+ This has been reported as a bug to Mozilla, and is regarded a duplicate of
+ other reports on sub and super https://bugzilla.mozilla.org/show_bug.cgi?id=401102
+ </para>
+ <para>
+ but baseline-shift has no effect on Firefox 2. See http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&amp;t=7410&amp;view=previous
+ </para>
+ <para>
+ The use of &lt;tspan to shift characters <emphasis role="bold">is</emphasis>
+ feasible, as shown <ulink url="http://www.w3.org/TR/SVG/images/text/tspan02.svg">in
+ this example</ulink>, which displays correctly in all browsers,
+ </para>
+ <para>
+ and it is also possible to use
+ </para>
+
+<programlisting>
+<phrase role="special">&lt;</phrase><phrase role="identifier">svg</phrase><phrase role="special">:</phrase><phrase role="identifier">g</phrase> <phrase role="identifier">transform</phrase><phrase role="special">=</phrase><phrase role="string">&quot;translate(5.062500, -5.367188)&quot;</phrase><phrase role="special">&gt;</phrase>
+</programlisting>
+ <para>
+ to shift the next letter up, but these parameters are font-size related,*
+ and the svg most verbose.
+ </para>
+ <para>
+ None of these method provides a <emphasis role="bold">convenient</emphasis>
+ method of creating the right string for titles, legends, or axis labels,
+ but it may be possible to devise code that does.
+ </para>
+ <anchor id="svg_plot.svg_simple_code_example.implementation.coding_style"/>
+ <bridgehead renderas="sect4">
+ <link linkend="svg_plot.svg_simple_code_example.implementation.coding_style">Coding
+ style</link>
+ </bridgehead>
+ <para>
+ In general <ulink url="http://www.boost.org/libs/spirit/doc/style_guide.html">Boost
+ coding style guide</ulink> and <ulink url="http://groups.yahoo.com/group/boost/files/coding_guidelines.html">Boost
+ coding guidelines</ulink> has been used.
+ </para>
+ <para>
+ But some work is needed to rename arguments named with lading underscores
+ in violation of guidance 2.14:
+ </para>
+ <para>
+ Names containing double underscores (
+<programlisting>
+<phrase role="identifier">__</phrase><phrase role="char">''</phrase><phrase role="special">)</phrase> <phrase role="keyword">or</phrase> <phrase role="identifier">beginning</phrase> <phrase role="identifier">with</phrase> <phrase role="identifier">single</phrase> <phrase role="identifier">underscores</phrase> <phrase role="special">(</phrase></programlisting>
+ _'') are entirely forbidden. These are reserved to the C++ implementation
+ in various contexts.
+ </para>
+ <para>
+ and also
+ </para>
+ <para>
+ 2.10. Data members should have a
+<programlisting>
+<phrase role="identifier">m_</phrase><phrase role="char">''</phrase> <phrase role="identifier">prefix</phrase><phrase role="special">,</phrase> <phrase role="identifier">to</phrase> <phrase role="identifier">distinguish</phrase> <phrase role="identifier">them</phrase>
+<phrase role="identifier">from</phrase> <phrase role="identifier">an</phrase> <phrase role="identifier">otherwise</phrase><phrase role="special">-</phrase><phrase role="identifier">identical</phrase> <phrase role="identifier">member</phrase> <phrase role="identifier">function</phrase> <phrase role="identifier">name</phrase>
+<phrase role="keyword">and</phrase> <phrase role="identifier">to</phrase> <phrase role="identifier">clarify</phrase> <phrase role="identifier">their</phrase> <phrase role="identifier">provenance</phrase> <phrase role="identifier">in</phrase> <phrase role="identifier">code</phrase> <phrase role="identifier">which</phrase> <phrase role="identifier">uses</phrase> <phrase role="identifier">them</phrase><phrase role="special">.</phrase>
+<phrase role="identifier">Non</phrase><phrase role="special">-</phrase><phrase role="identifier">member</phrase> <phrase role="identifier">names</phrase> <phrase role="identifier">must</phrase> <phrase role="keyword">not</phrase> <phrase role="identifier">have</phrase> <phrase role="identifier">an</phrase> </programlisting>
+ m_'' prefix.
+ </para>
+ <para>
+ Some data members end with _ to avoid name clashes, another widely used convention.
+ </para>
+ </section>
+ <section id="svg_plot.svg_simple_code_example.acknowledgements">
+ <title><link linkend="svg_plot.svg_simple_code_example.acknowledgements"> Acknowledgements</link></title>
+ <para>
+ I would like to thank the following people:
+ </para>
+ <itemizedlist>
+ <listitem>
+ <emphasis role="bold">Google</emphasis>: For offering Summer of Code, and
+ giving me the opportunity to do something I never would have done otherwise.
+ </listitem>
+ <listitem>
+ <emphasis role="bold">Joaquín Mª López Muñoz</emphasis>: My GSoC mentor.
+ His proofreading and advice helped shape the project into what it is today,
+ and prevented small problems from becoming major problems.
+ </listitem>
+ <listitem>
+ <emphasis role="bold">Paul A. Bristow</emphasis>: For showing an active
+ interest, offering literally dozens of minor and major features he'd like
+ to see, and for helping with Boost.Build.
+ </listitem>
+ <listitem>
+ <emphasis role="bold">Matias Capeletto</emphasis>: For showing an active
+ interest, and offering feature suggestions.
+ </listitem>
+ <listitem>
+ <emphasis role="bold">Sarah Braun</emphasis>: For helping me pick colors
+ for examples.
+ </listitem>
+ <listitem>
+ <emphasis role="bold">Boost Community</emphasis>: For all of the encouragement,
+ suggestions, disagreements, and patience.
+ </listitem>
+ </itemizedlist>
+ </section>
+ </article>
+
\ No newline at end of file

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_tutorial.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/svg_tutorial.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,2 @@
+[section:svg_tutorial SVG tutorial]
+[endsect]

Added: sandbox/SOC/2007/visualization/libs/svg_plot/doc/to_do.qbk
==============================================================================
--- (empty file)
+++ sandbox/SOC/2007/visualization/libs/svg_plot/doc/to_do.qbk 2008-01-08 00:24:03 EST (Tue, 08 Jan 2008)
@@ -0,0 +1,33 @@
+[section:todo To Do List]
+This project is still in development, so here is a list of things that I would
+still like to do by the end of the project. I recommend you check here first
+before you email me with requests.
+
+* Allow an *external stylesheet* to be loaded to style the graph. External
+stylesheets will allow a standard and easy way to style the document
+so that users don't have to come up with their own home-grown solutions.
+* Allow *function pointers* to specify functions as input. A typical use case
+is to just see what a function like [^sin(x)] looks like.
+* *Radian coordinate system*.
+* Implementation of *SVG's DOM*. This will make the SVG class useful for other things than solely making graphs!
+* *Automatic scaling* of the axis.
+* Allow *2D plots of 1D containers*.
+Currently I am having trouble with having functors that update state interact with `make_transform_iterator`, and have omitted the feature.
+* Allow *other image formats*. This is certainly an after-GSoC project, as
+there are many inherent difficulties with this part. The solution that I am
+currently playing with is allowing the user to pass a functor that traverses
+the document tree. Generalizing images to an `image` class is fraught with
+difficulties, as SVG is a tree-based format, which it does not share with
+many other formats. When I come up with what I feel is a minimal-intervention
+method of doing this, I will begin a discussion on the Boost dev list.
+* *Avoid redrawing the entire plot each time*. This is the easiest way to
+write the program initially, but it would be more efficient if the program could
+keep track of what has been changed and what hasn't, so that it may be more
+efficient if lots of images are being produced.
+* Allow the user to provide a function object for generating *custom axis labels*,
+for example, label axes with names of months (Jan, Feb, Mar...)
+instead of integer representations of months (1, 2, 3...).
+* *Logarithmic Axes*.
+* *Histograms*.
+
+[endsect] [/section:todo To Do]


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk