Tags:
create new tag
, view all tags

Chart Plugin Tests

This page attempts to demonstrate/test many of the possible combinations of various parameters of the ChartPlugin. There are too many combinations of parameters to test all possible combinations, so only a few are shown here.


Tables used by tests

The following 4 tables are used for testing purposes.

Table #1

Nr Period Min Acceptable Target Exceptional Actual Comment
1 Start 0 50 70 90 39 initial measure
2 FY03-Q1 0 35 75 95 55  
3 FY03-Q2 0 35 75 95 36  
4 FY03-Q3 0 40 80 100 62  
5 FY03-Q4 0 40 80 100 72  
6 FY04-Q1 0 40 80 100 68  

Table #2

This table is the same as the 1st except that the data is row oriented instead of column oriented.

Nr 1 2 3 4 5 6
Period Start FY03-Q1 FY03-Q2 FY03-Q3 FY03-Q4 FY04-Q1
Min 0 0 0 0 0 0
Acceptable 50 35 35 40 40 40
Target 70 75 75 80 80 80
Exceptional 90 95 95 100 100 100
Actual 39 55 36 62 72 68
Comment initial measure          

Table #3

This table is used for showing scatter graphs.

A B C D E
1 3 6 33 2
1.4 6 22 2 4
1.8 2 5   6
2.5 4 3   8
4 7 6 43 10
5 13 44 25 12
7 8 1 4 14
6 35 3 8 16
8 2 22 4 18
9 7 6 13 20
8.3 25 33 23 2
7.4 9 9.4 23 23

Table #4

This table is used for various legend placement tests as well as logarithmic data.

  line 1 line 2 line 3 line 4 sparse 1 sparse 2 semilog line
1990 0 0 0 0 0   0.2
1991 0 0 0 0   35 1
1992 2 12 22 32 35.5   5
1993 3 20 20 33 38 35.2 25
1994 3 20 19.5 33 38.1   125
1995 39 38 37 36   35.8 625
1996 40 40 40 40 38.1   3125
1997 40 41 42 43   35 15625

Table #5

This table is used to show some edge cases including that non-numeric cell values are parsed correctly and that all zero values is charted correctly.

Date data col 1 data col 2 data col 3
2011-01-01 10 0 1.0e10
2011-01-02 10 -1.3 2.0e10
2011-01-03 10 12 2.2e10
2011-01-04 10 20 2.0e10
2011-01-05 10 20 1.95e10
2011-01-06 10 29 3.8e10
2011-01-07 10 tag33 4.0e10
2011-01-08 10 $ltsomething$gt41 4e10

General tests

line tests

Simple single line. No other markings at all
%CHART{name='lineTest01' table='table1' type='line' data='R2:C7..R7:C7' ygrid='off'}%
Add title = "line test #2" and enable ygrids to above
%CHART{name='lineTest02' table='table1' type='line' data='R2:C7..R7:C7' title='line test #2'}%
Add X axis lables to above
%CHART{name='lineTest03' table='table1' type='line' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='line test #3'}%
Add Y axis lables to above
%CHART{name='lineTest04' table='table1' type='line' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='line test #4' yaxis='on'}%
Add ymin = 0 to above
%CHART{name='lineTest05' table='table1' type='line' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='line test #5' yaxis='on' ymin='0'}%
Add ymax = 150 to above
%CHART{name='lineTest06' table='table1' type='line' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='line test #6' yaxis='on' ymin='0' ymax='150'}%
Add ylabel = "Hello there" to above
%CHART{name='lineTest07' table='table1' type='line' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='line test #7' yaxis='on' ymin='0' ymax='100' ylabel='Hello there'}%
Add numygrids = "5" to above
%CHART{name='lineTest08' table='table1' type='line' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='line test #8' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' numygrids='5'}%
Change numygrids = "2" to above
%CHART{name='lineTest09' table='table1' type='line' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='line test #9' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' numygrids='2'}%
Remove numygrids from above and add xlabel "Yep, an X label" to above
%CHART{name='lineTest10' table='table1' type='line' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='line test #10' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label'}%
Add datalabel = on to above
%CHART{name='lineTest11' table='table1' type='line' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='line test #11' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='on'}%
Change datalabel = box to above
%CHART{name='lineTest12' table='table1' type='line' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='line test #12' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='box'}%
Add legend to above
%CHART{name='lineTest13' table='table1' type='line' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='line test #13' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='box' legend='R1:C7..R1:C7'}%
Add additional data lines to above and update legend to above
%CHART{name='lineTest14' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #14' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='box' legend='R1:C4..R1:C7'}%
Specify different line colors to above
%CHART{name='lineTest15' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #15' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='box' legend='R1:C4..R1:C7' colors='#ffAAAA,#AAffAA,#AAAAff,#AAAAAA'}%
Restore default colors and change datalabel such that only the last line has values in boxes and the 2nd to last has values (no box) to above
%CHART{name='lineTest16' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #16' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7'}%
Add bgcolor="#EEEEEE" to above
  =%CHART{name='lineTest17' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #17' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' bgcolor='#EEEEFF'}%
Change bgcolor="#FFFFFF #EEEEEE" to above
%CHART{name='lineTest18' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #18' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' bgcolor='#FFFFFF #EEEEFF'}%
Change bgcolor="#EEEEEE #EEFFEE" to above
%CHART{name='lineTest19' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #19' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' bgcolor='#EEEEEE #EEFFEE'}%
Restore bgcolor and add ygrid = on (changing from dotted ygrid to solid ygrid) to above
%CHART{name='lineTest20' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #20' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='on'}%
Change ygrid = off to above
%CHART{name='lineTest21' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #21' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off'}%
Add xgrid = on (changing from dotted xgrid to solid xgrid) to above
%CHART{name='lineTest22' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #22' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='on'}%
Change xgrid = off to above
%CHART{name='lineTest23' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #23' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='off'}%
Change width = 450 to above
%CHART{name='lineTest24' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #24' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='off' width='450'}%
Change height = 150 to above
%CHART{name='lineTest25' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #25' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='off' width='450' height='150'}%
Default width/height. Get data from ChartPluginTestsRemote. Specify table="2" on new topic = ChartPluginTestsRemote. Actual values should show up incremented by 0.52 since data is from a different topic page and the 0.02 denotes the data is from the 2nd table. Legend should show up with Remote since the data on the remote page was set up to include Remote in the legends to above
%CHART{name='lineTest26' topic='ChartPluginTestsRemote' table='tableRemote2' type='line' data='R4:C2..R7:C7' xaxis='R2:C2..R2:C7' title='line test #26' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R4:C1..R7:C1' ygrid='off' xgrid='off'}%
Same as above except add an additional data set (averages) that is calculated by %CALC%.
%CHART{name='lineTest27' topic='ChartPluginTestsRemote' table='tableRemote2' type='line' data='R4:C2..R8:C7' xaxis='R2:C2..R2:C7' title='line test #27' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R4:C1..R8:C1' ygrid='off' xgrid='off'}%
Back to local data and add the alt tag = This is the alt tag for test28 %CALC%.
%CHART{name='lineTest28' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #28' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='off' alt='This is the alt tag for test28'}%
This is the alt tag for test28
Show a chart from table5 where the table contains numbers surrounded by HTML tags
%CHART{name='lineTest29' table='table5' xaxis='R2:C1..R999:C1' data='R2:C3..R999:C3' xaxisangle='1' title='line test #29' datalabel='box' ygrid='on' yaxis='on'}%
Show a chart from table5 where the table contains exponential formated numbers
%CHART{name='lineTest30' table='table5' xaxis='R2:C1..R999:C1' data='R2:C4..R999:C4' xaxisangle='1' title='line test #30' datalabel='box' ygrid='on' yaxis='on'}%
Show a chart from table5 where the table contains the same numbers.
%CHART{name='lineTest31' table='table5' xaxis='R2:C1..R999:C1' data='R2:C2..R999:C2' xaxisangle='1' title='line test #31' datalabel='box' ygrid='on' yaxis='on'}%
Show a chart from table5 where the table contains the same numbers and setting ymin = the same #
%CHART{name='lineTest32' table='table5' xaxis='R2:C1..R999:C1' data='R2:C2..R999:C2' xaxisangle='1' title='line test #32' datalabel='box' ygrid='on' yaxis='on' ymin='10'}%
Show a chart from table5 where the table contains the same numbers and setting ymax = the same #
%CHART{name='lineTest33' table='table5' xaxis='R2:C1..R999:C1' data='R2:C2..R999:C2' xaxisangle='1' title='line test #33' datalabel='box' ygrid='on' yaxis='on' ymax='10'}%
Show a chart from table5 setting ymin = 0 and ymax = 123
%CHART{name='lineTest34' table='table5' xaxis='R2:C1..R999:C1' data='R2:C3..R999:C3' xaxisangle='1' title='line test #34' datalabel='box' ygrid='on' yaxis='on' ymin='0' ymax='123'}%
Show a chart with ytics = 2.
%CHART{name='lineTest35' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #35' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' ytics='2'}%
Show a chart with ytics = 5.
%CHART{name='lineTest36' table='table1' type='line' data='R2:C4..R7:C7' xaxis='R2:C2..R7:C2' title='line test #36' yaxis='on' ymin='0' ymax='100' ylabel='Hello there' xlabel='Yep, an X label' ytics='5'}%

area tests

Simple single area. No other markings at all
%CHART{name='areaTest01' type='area' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off'}%
Add Title to above.
%CHART{name='areaTest02' type='area' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off' title='area test #02'}%
Add X axis to above.
%CHART{name='areaTest03' type='area' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off' title='area test #03' xaxis='R2:C2..R7:C2'}%
Add Y axis to above.
%CHART{name='areaTest04' type='area' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off' title='area test #04' xaxis='R2:C2..R7:C2' yaxis='on'}%
Add ymin = 0 to above.
%CHART{name='areaTest05' type='area' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off' title='area test #05' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0'}%
Add ymax = 150 to above.
%CHART{name='areaTest06' type='area' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off' title='area test #06' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150'}%
Add ylabel "Hello there" to above.
%CHART{name='areaTest07' type='area' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off' title='area test #07' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there'}%
Add numygrids="5" to above.
%CHART{name='areaTest08' type='area' data='R2:C7..R999:C7' xaxisangle='1' title='area test #08' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' numygrids='5'}%
Change numygrids="2" to above.
%CHART{name='areaTest09' type='area' data='R2:C7..R999:C7' xaxisangle='1' title='area test #09' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' numygrids='2'}%
Remove numygrids from above and add xlabel "Yep, an X label" to above.
%CHART{name='areaTest10' type='area' data='R2:C7..R999:C7' xaxisangle='1' title='area test #10' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label'}%
Add datalabel = on to above.
%CHART{name='areaTest11' type='area' data='R2:C7..R999:C7' xaxisangle='1' title='area test #11' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='on'}%
Add datalabel = box to above.
%CHART{name='areaTest12' type='area' data='R2:C7..R999:C7' xaxisangle='1' title='area test #12' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='box'}%
Add legend = to above.
%CHART{name='areaTest13' type='area' data='R2:C7..R999:C7' xaxisangle='1' title='area test #13' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='box' legend='R1:C7..R1:C7'}%
Add additional data areas and update legend to above.
%CHART{name='areaTest14' type='area' data='R2:C4..R999:C7' xaxisangle='1' title='area test #14' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='box' legend='R1:C4..R1:C7'}%
Specify different colors to above. Now are lite red, lite green, lite blue, gray instead of defaults
%CHART{name='areaTest15' type='area' data='R2:C4..R999:C7' xaxisangle='1' title='area test #15' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='box' legend='R1:C4..R1:C7' colors='#ffAAAA,#AAffAA,#AAAAff,#AAAAAA'}%
Restore default colors and change datalabel such that only the last area has values in boxes and the 2nd to last has values (no box) to above
%CHART{name='areaTest16' type='area' data='R2:C4..R999:C7' xaxisangle='1' title='area test #16' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7'}%
Add bgcolor="#AAAAAA" to above
%CHART{name='areaTest17' type='area' data='R2:C4..R999:C7' xaxisangle='1' title='area test #17' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' bgcolor='#AAAAAA'}%
Change bgcolor="#FFFFFF #EEEEEE" to above
%CHART{name='areaTest18' type='area' data='R2:C4..R999:C7' xaxisangle='1' title='area test #18' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' bgcolor='#FFFFFF #EEEEEE'}%
Change bgcolor="#EEEEEE #EEFFEE" to above
%CHART{name='areaTest19' type='area' data='R2:C4..R999:C7' xaxisangle='1' title='area test #19' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' bgcolor='#EEEEEE #EEFFEE'}%
Restore bgcolor and change ygrid = on to above
%CHART{name='areaTest20' type='area' data='R2:C4..R999:C7' xaxisangle='1' title='area test #20' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='on'}%
Change ygrid = off to above
%CHART{name='areaTest21' type='area' data='R2:C4..R999:C7' xaxisangle='1' title='area test #21' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off'}%
Change xgrid = on to above
%CHART{name='areaTest22' type='area' data='R2:C4..R999:C7' xaxisangle='1' title='area test #22' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='on'}%
Change xgrid = off to above
%CHART{name='areaTest23' type='area' data='R2:C4..R999:C7' xaxisangle='1' title='area test #23' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='off'}%
Add width = 450 to above
%CHART{name='areaTest24' type='area' data='R2:C4..R999:C7' xaxisangle='1' title='area test #24' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='off' width='450'}%
Add height = 150 to above
%CHART{name='areaTest25' type='area' data='R2:C4..R999:C7' xaxisangle='1' title='area test #25' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='off' width='450' height='150'}%
Default width/height. Get data from ChartPluginTestsRemote. Specify table="2" on new topic = ChartPluginTestsRemote. Actual values should show up incremented by 0.52 since data is from a different topic page and the 0.02 denotes the data is from the 2nd table. Legend should show up with Remote since the data on the remote page was set up to include Remote in the legends
%CHART{name='areaTest26' type='area' topic='ChartPluginTestsRemote' table='2' data='R4:C2..R7:C7' xaxisangle='1' title='area test #26' xaxis='R2:C2..R2:C7' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R4:C1..R7:C1' ygrid='off' xgrid='off'}%
Same as above except add an additional data set (averages) that is calculated by %CALC%. Also shows that since only 4 default area colors are specified, the 5th area reuses the 1st default area color.
%CHART{name='areaTest27' type='area' topic='ChartPluginTestsRemote' table='2' data='R4:C2..R8:C7' xaxisangle='1' title='area test #27' xaxis='R2:C2..R2:C7' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R4:C1..R8:C1' ygrid='off' xgrid='off'}%
Chage title to above and add the alt tag = This is the alt tag
%CHART{name='areaTest28' type='area' topic='ChartPluginTestsRemote' table='2' data='R4:C2..R8:C7' xaxisangle='1' title='New Title: area test #28' xaxis='R2:C2..R2:C7' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R4:C1..R8:C1' ygrid='off' xgrid='off' alt='This is the alt tag'}%
This is the alt tag

bar tests

Simple single bar. No other markings at all
%CHART{name='barTest01' type='bar' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off'}%
Add Title to above.
%CHART{name='barTest02' type='bar' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off' title='bar test #02'}%
Add X axis to above.
%CHART{name='barTest03' type='bar' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off' title='bar test #03' xaxis='R2:C2..R7:C2'}%
Add Y axis to above.
%CHART{name='barTest04' type='bar' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off' title='bar test #04' xaxis='R2:C2..R7:C2' yaxis='on'}%
Add ymin = 0 to above.
%CHART{name='barTest05' type='bar' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off' title='bar test #05' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0'}%
Add ymax = 150 to above.
%CHART{name='barTest06' type='bar' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off' title='bar test #06' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150'}%
Add ylabel "Hello there" to above.
%CHART{name='barTest07' type='bar' data='R2:C7..R999:C7' xaxisangle='1' ygrid='off' title='bar test #07' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there'}%
Add numygrids="5" to above.
%CHART{name='barTest08' type='bar' data='R2:C7..R999:C7' xaxisangle='1' title='bar test #08' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' numygrids='5'}%
Change numygrids="2" to above.
%CHART{name='barTest09' type='bar' data='R2:C7..R999:C7' xaxisangle='1' title='bar test #09' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' numygrids='2'}%
Remove numygrids from above and add xlabel "Yep, an X label" to above.
%CHART{name='barTest10' type='bar' data='R2:C7..R999:C7' xaxisangle='1' title='bar test #10' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label'}%
Add datalabel = on to above.
%CHART{name='barTest11' type='bar' data='R2:C7..R999:C7' xaxisangle='1' title='bar test #11' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='on'}%
Add datalabel = box to above.
%CHART{name='barTest12' type='bar' data='R2:C7..R999:C7' xaxisangle='1' title='bar test #12' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='box'}%
Add legend = to above.
%CHART{name='barTest13' type='bar' data='R2:C7..R999:C7' xaxisangle='1' title='bar test #13' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='box' legend='R1:C7..R1:C7'}%
Add additional data bars and update legend to above.
%CHART{name='barTest14' type='bar' data='R2:C4..R999:C7' xaxisangle='1' title='bar test #14' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='box' legend='R1:C4..R1:C7'}%
Specify different colors to above. Now are lite red, lite green, lite blue, gray instead of defaults
%CHART{name='barTest15' type='bar' data='R2:C4..R999:C7' xaxisangle='1' title='bar test #15' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='box' legend='R1:C4..R1:C7' colors='#ffAAAA,#AAffAA,#AAAAff,#AAAAAA'}%
Restore default colors and change datalabel such that only the last bar has values in boxes and the 2nd to last has values (no box) to above
%CHART{name='barTest16' type='bar' data='R2:C4..R999:C7' xaxisangle='1' title='bar test #16' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7'}%
Add bgcolor="#AAAAAA" to above
%CHART{name='barTest17' type='bar' data='R2:C4..R999:C7' xaxisangle='1' title='bar test #17' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' bgcolor='#AAAAAA'}%
Change bgcolor="#FFFFFF #EEEEEE" to above
%CHART{name='barTest18' type='bar' data='R2:C4..R999:C7' xaxisangle='1' title='bar test #18' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' bgcolor='#FFFFFF #EEEEEE'}%
Change bgcolor="#EEEEEE #EEFFEE" to above
%CHART{name='barTest19' type='bar' data='R2:C4..R999:C7' xaxisangle='1' title='bar test #19' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' bgcolor='#EEEEEE #EEFFEE'}%
Restore bgcolor and change ygrid = on to above
%CHART{name='barTest20' type='bar' data='R2:C4..R999:C7' xaxisangle='1' title='bar test #20' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='on'}%
Change ygrid = off to above
%CHART{name='barTest21' type='bar' data='R2:C4..R999:C7' xaxisangle='1' title='bar test #21' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off'}%
Change xgrid = on to above
%CHART{name='barTest22' type='bar' data='R2:C4..R999:C7' xaxisangle='1' title='bar test #22' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='on'}%
Change xgrid = off to above
%CHART{name='barTest23' type='bar' data='R2:C4..R999:C7' xaxisangle='1' title='bar test #23' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='off'}%
Add width = 450 to above
%CHART{name='barTest24' type='bar' data='R2:C4..R999:C7' xaxisangle='1' title='bar test #24' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='off' width='450'}%
Add height = 150 to above
%CHART{name='barTest25' type='bar' data='R2:C4..R999:C7' xaxisangle='1' title='bar test #25' xaxis='R2:C2..R7:C2' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R1:C4..R1:C7' ygrid='off' xgrid='off' width='450' height='150'}%
Default width/height. Get data from ChartPluginTestsRemote. Specify table="2" on new topic = ChartPluginTestsRemote. Actual values should show up incremented by 0.52 since data is from a different topic page and the 0.02 denotes the data is from the 2nd table. Legend should show up with Remote since the data on the remote page was set up to include Remote in the legends
%CHART{name='barTest26' type='bar' topic='ChartPluginTestsRemote' table='2' data='R4:C2..R7:C7' xaxisangle='1' title='bar test #26' xaxis='R2:C2..R2:C7' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R4:C1..R7:C1' ygrid='off' xgrid='off'}%
Same as above except add an additional data set (averages) that is calculated by %CALC%. Also shows that since only 4 default bar colors are specified, the 5th bar reuses the 1st default bar color.
%CHART{name='barTest27' type='bar' topic='ChartPluginTestsRemote' table='2' data='R4:C2..R8:C7' xaxisangle='1' title='bar test #27' xaxis='R2:C2..R2:C7' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R4:C1..R8:C1' ygrid='off' xgrid='off'}%
Chage title to above and add the alt tag = This is the alt tag
%CHART{name='barTest28' type='bar' topic='ChartPluginTestsRemote' table='2' data='R4:C2..R8:C7' xaxisangle='1' title='New Title: bar test #28' xaxis='R2:C2..R2:C7' yaxis='on' ymin='0' ymax='150' ylabel='Hello there' xlabel='Yep, an X label' datalabel='off off on box' legend='R4:C1..R8:C1' ygrid='off' xgrid='off' alt='This is the alt tag'}%
This is the alt tag

combo tests

Simple combo graph using table #2. Since no datatype is defined and only a single data set, combo defaults to a single line.
%CHART{name='comboTest01' type='combo' table='2' data='R7:C2..R7:C7' xaxis='R2:C2..R2:C7' ygrid='off' xgrid='off' width='500'}%
Change so 3 data sets are drawn as areas and the last drawn as a line.
%CHART{name='comboTest02' type='combo' table='2' data='R4:C2..R7:C7' xaxis='R2:C2..R2:C7' ygrid='off' xgrid='off' title='combo test #02' width='500'}%
Same as above, adding grid lines and Y axis labels and X/Y titles.
%CHART{name='comboTest03' type='combo' table='2' data='R4:C2..R7:C7' xaxis='R2:C2..R2:C7' yaxis='on' title='combo test #03' width='500' xlabel='Yep, an X label' ylabel='Hello there' legend='R4:C1..R7:C1'}%
Same as above adding subtype="area" which should force all data sets to be drawn as area. Since the last data set would fall behind the previously drawn areas, it is drawn as a line.
%CHART{name='comboTest04' type='combo' subtype='area' table='2' data='R4:C2..R7:C7' xaxis='R2:C2..R2:C7' yaxis='on' title='combo test #04' width='500' xlabel='Yep, an X label' ylabel='Hello there' legend='R4:C1..R7:C1'}%
Same as above adding subtype="line" which should force all data sets to be drawn as line.
%CHART{name='comboTest05' type='combo' subtype='line' table='2' data='R4:C2..R7:C7' xaxis='R2:C2..R2:C7' yaxis='on' title='combo test #05' width='500' xlabel='Yep, an X label' ylabel='Hello there' legend='R4:C1..R7:C1'}%
Same as above adding subtype="bar" which should force all data sets to be drawn as bar.
%CHART{name='comboTest06' type='combo' subtype='bar' table='2' data='R4:C2..R7:C7' xaxis='R2:C2..R2:C7' yaxis='on' title='combo test #06' width='500' xlabel='Yep, an X label' ylabel='Hello there' legend='R4:C1..R7:C1'}%
Same as above adding subtype="pline" which should force all data sets to be drawn as pline.
%CHART{name='comboTest07' type='combo' subtype='pline' table='2' data='R4:C2..R7:C7' xaxis='R2:C2..R2:C7' yaxis='on' title='combo test #07' width='500' xlabel='Yep, an X label' ylabel='Hello there' legend='R4:C1..R7:C1'}%
Same as above adding subtype="point" which should force all data sets to be drawn as point.
%CHART{name='comboTest08' type='combo' subtype='point' table='2' data='R4:C2..R7:C7' xaxis='R2:C2..R2:C7' yaxis='on' title='combo test #08' width='500' xlabel='Yep, an X label' ylabel='Hello there' legend='R4:C1..R7:C1'}%
Same as above changing subtype="area line pline point".
%CHART{name='comboTest09' type='combo' subtype='area line pline point' table='2' data='R4:C2..R7:C7' xaxis='R2:C2..R2:C7' yaxis='on' title='combo test #09' width='500' xlabel='Yep, an X label' ylabel='Hello there' legend='R4:C1..R7:C1'}%
Same as above changing subtype="line pline point area".
%CHART{name='comboTest10' type='combo' subtype='line pline point area' table='2' data='R4:C2..R7:C7' xaxis='R2:C2..R2:C7' yaxis='on' title='combo test #10' width='500' xlabel='Yep, an X label' ylabel='Hello there' legend='R4:C1..R7:C1'}%
Same as above changing subtype="pline pline point bar".
%CHART{name='comboTest11' type='combo' subtype='pline pline point bar' table='2' data='R4:C2..R7:C7' xaxis='R2:C2..R2:C7' yaxis='on' title='combo test #11' width='500' xlabel='Yep, an X label' ylabel='Hello there' legend='R4:C1..R7:C1'}%

scatter tests

Simple scatter graph using table #3. Defaults to all data sets drawn as point.
%CHART{name='scatterTest01' type='scatter' table='3' data='R2:C2..R99:C99' xaxis='R2:C1..R99:C1' xgrid='off' width='500'}%
Add title, grid lines and both X and Y axis labels and title to above.
%CHART{name='scatterTest02' type='scatter' table='3' data='R2:C2..R99:C99' xaxis='R2:C1..R99:C1' title='scatter test #02' xlabel='Yep, an X label' legend='R1:C2..R1:C99' yaxis='on' ygrid='on' ymin='0' xgrid='on' width='500'}%
Add subtype="line" to above.
%CHART{name='scatterTest03' type='scatter' subtype='line' table='3' data='R2:C2..R99:C99' xaxis='R2:C1..R99:C1' title='scatter test #03' xlabel='Yep, an X label' legend='R1:C2..R1:C99' yaxis='on' ygrid='on' ymin='0' xgrid='on' width='500'}%
Change subtype="pline" to above.
%CHART{name='scatterTest04' type='scatter' subtype='pline' table='3' data='R2:C2..R99:C99' xaxis='R2:C1..R99:C1' title='scatter test #04' xlabel='Yep, an X label' legend='R1:C2..R1:C99' yaxis='on' ygrid='on' ymin='0' xgrid='on' width='500' datalabel='on'}%
Change subtype="point" to above.
%CHART{name='scatterTest05' type='scatter' subtype='point' table='3' data='R2:C2..R99:C99' xaxis='R2:C1..R99:C1' title='scatter test #05' xlabel='Yep, an X label' legend='R1:C2..R1:C99' yaxis='on' ygrid='on' ymin='0' xgrid='on' width='500'}%
Change subtype="bar" to above.
%CHART{name='scatterTest06' type='scatter' subtype='bar' table='3' data='R2:C2..R99:C99' xaxis='R2:C1..R99:C1' title='scatter test #06' xlabel='Yep, an X label' legend='R1:C2..R1:C99' yaxis='on' ygrid='on' ymin='0' xgrid='on' width='500'}%
Change subtype="point bar line pline" to above.
%CHART{name='scatterTest07' type='scatter' subtype='point bar line pline' table='3' data='R2:C2..R99:C99' xaxis='R2:C1..R99:C1' title='scatter test #07' xlabel='Yep, an X label' legend='R1:C2..R1:C99' yaxis='on' ygrid='on' ymin='0' xgrid='on' width='500'}%
Change subtype="bar line pline point" to above.
%CHART{name='scatterTest08' type='scatter' subtype='bar line pline point' table='3' data='R2:C2..R99:C99' xaxis='R2:C1..R99:C1' title='scatter test #08' xlabel='Yep, an X label' legend='R1:C2..R1:C99' yaxis='on' ygrid='on' ymin='0' xgrid='on' width='500'}%
Change subtype="line pline point bar" to above.
%CHART{name='scatterTest09' type='scatter' subtype='line pline point bar' table='3' data='R2:C2..R99:C99' xaxis='R2:C1..R99:C1' title='scatter test #09' xlabel='Yep, an X label' legend='R1:C2..R1:C99' yaxis='on' ygrid='on' ymin='0' xgrid='on' width='500'}%
Change subtype="pline point bar line" to above.
%CHART{name='scatterTest10' type='scatter' subtype='pline point bar line' table='3' data='R2:C2..R99:C99' xaxis='R2:C1..R99:C1' title='scatter test #10' xlabel='Yep, an X label' legend='R1:C2..R1:C99' yaxis='on' ygrid='on' ymin='0' xgrid='on' width='500'}%
Change subtype="bar bar bar pline" to above.
%CHART{name='scatterTest11' type='scatter' subtype='bar bar bar pline' table='3' data='R2:C2..R99:C99' xaxis='R2:C1..R99:C1' title='scatter test #11' xlabel='Yep, an X label' legend='R1:C2..R1:C99' yaxis='on' ygrid='on' ymin='0' xgrid='on' width='500'}%
Adjust data range to see how the X labeling is affected.
%CHART{name='scatterTest12' type='scatter' subtype='bar bar bar pline' table='3' data='R5:C2..R99:C99' xaxis='R5:C1..R99:C1' title='scatter test #12' xlabel='Yep, an X label' legend='R1:C2..R1:C99' yaxis='on' ygrid='on' ymin='0' xgrid='on' width='500'}%
Adjust data range to see how the X labeling is affected.
%CHART{name='scatterTest13' type='scatter' subtype='bar bar bar pline' table='3' data='R8:C2..R99:C99' xaxis='R8:C1..R99:C1' title='scatter test #13' xlabel='Yep, an X label' legend='R1:C2..R1:C99' yaxis='on' ygrid='on' ymin='0' xgrid='on' width='500'}%

New functionality tests

Test various legend placement situations

Test that when all lines overlap on the very bottom of the chart, the legends all show up non-overlapped.
%CHART{name='legendTest01' table='4' data='R2:C2..R3:C5' xaxis='R2:C1..R9:C1' title='legend test #01' legend='R1:C2..R1:C5' yaxis='on' ygrid='off'}%
Test that when two lines overlap in the middle of the chart, the legends get correctly placed.
%CHART{name='legendTest02' table='4' data='R2:C2..R5:C5' xaxis='R2:C1..R9:C1' title='legend test #02' legend='R1:C2..R1:C5' yaxis='on' ygrid='off'}%
Similar to the test above, except the data is changed such that the placement of the legends for the two middle lines should be reversed.
%CHART{name='legendTest03' table='4' data='R2:C2..R6:C5' xaxis='R2:C1..R9:C1' title='legend test #03' legend='R1:C2..R1:C5' yaxis='on' ygrid='off'}%
Test that when 4 lines are close to overlapping and are all located at the top of the chart, the legends get correctly placed.
%CHART{name='legendTest04' table='4' data='R2:C2..R7:C5' xaxis='R2:C1..R9:C1' title='legend test #04' legend='R1:C2..R1:C5' yaxis='on' ygrid='off' ymax='40'}%
Test that when 4 lines do exactly overlap at the top of the chart, the legends get correctly placed.
%CHART{name='legendTest05' table='4' data='R2:C2..R8:C5' xaxis='R2:C1..R9:C1' title='legend test #05' legend='R1:C2..R1:C5' yaxis='on' ygrid='off' ymax='40'}%
Test that the arrangement of legends of 4 lines located at the top of a chart is correct.
%CHART{name='legendTest06' table='4' data='R2:C2..R9:C5' xaxis='R2:C1..R9:C1' title='legend test #06' legend='R1:C2..R1:C5' yaxis='on' ygrid='off' ymax='40'}%
Test that even with a ymax set too low such that the lines go off the top of the chart, the legends still stay on the chart.
%CHART{name='legendTest07' table='4' data='R2:C2..R4:C5' xaxis='R2:C1..R9:C1' title='legend test #07' legend='R1:C2..R1:C5' yaxis='on' ygrid='off' ymax='20'}%
Test that even with a ymin set too high such that some lines do not even show up on the chart because they fall below the chart, the legends still stay on the chart.
%CHART{name='legendTest08' table='4' data='R2:C2..R4:C5' xaxis='R2:C1..R9:C1' title='legend test #08' legend='R1:C2..R1:C5' yaxis='on' ygrid='off' ymin='21'}%
Test extremes that even when ymin is set higher than all data, that the legends still get drawn on the chart.
%CHART{name='legendTest09' table='4' data='R2:C2..R4:C5' xaxis='R2:C1..R9:C1' title='legend test #09' legend='R1:C2..R1:C5' yaxis='on' ygrid='off' ymin='50' ymax='60'}%
Test extremes that even when ymax is set lower than all data, that the legends still get drawn on the chart.
%CHART{name='legendTest10' table='4' data='R2:C2..R4:C5' xaxis='R2:C1..R9:C1' title='legend test #10' legend='R1:C2..R1:C5' yaxis='on' ygrid='off' ymin='-50' ymax='-10'}%

Test numxgrids and xaxisangle options

Show what happens when there is so much data that the X axis labels overlap.
%CHART{name='gridTest01' table='4' data='R2:C2..R99:C5' xaxis='R2:C1..R99:C1' title='grid test #01' legend='R1:C2..R1:C5' width='200' yaxis='on'}%
Take the above graph and specify numxgrids = "3" making the X axis labels more readable.
%CHART{name='gridTest02' table='4' data='R2:C2..R99:C5' xaxis='R2:C1..R99:C1' title='grid test #02' legend='R1:C2..R1:C5' width='200' yaxis='on' numxgrids='3'}%
Take the first graph and specify xaxisangle = 90, changing the X axis label angle = 90 degrees.
%CHART{name='gridTest03' table='4' data='R2:C2..R99:C5' xaxis='R2:C1..R99:C1' title='grid test #03' legend='R1:C2..R1:C5' width='200' yaxis='on' xaxisangle='90'}%

Test scale and ytics options

Show how scale=semilog makes the chart easier to read. Since ytics is NOT specified, it defaults to 8.
%CHART{name='semilogTest01' scale='semilog' table='4' data='R2:C8..R99:C8' xaxis='R2:C1..R99:C1' title='semilog test #01' legend='R1:C8..R1:C8' yaxis='on' datalabel='on'}%
Add ytics=4 to above.
%CHART{name='semilogTest02' scale='semilog' table='4' data='R2:C8..R99:C8' xaxis='R2:C1..R99:C1' title='semilog test #02' legend='R1:C8..R1:C8' yaxis='on' ytics='4' datalabel='on'}%
Change the amount of data displayed which should change the ymin/ymax.
%CHART{name='semilogTest03' scale='semilog' table='4' data='R4:C8..R6:C8' xaxis='R4:C1..R99:C1' title='semilog test #03' legend='R1:C8..R1:C8' yaxis='on' datalabel='on'}%
Show the above plotted data on a linear scale with ytics=1.
%CHART{name='semilogTest04' table='4' data='R2:C8..R99:C8' xaxis='R2:C1..R99:C1' title='semilog test #04' legend='R1:C8..R1:C8' yaxis='on' ytics='1' datalabel='on'}%

Test defaultdata option

Show a chart with sparse data.
%CHART{name='defaultsTest01' table='4' data='R2:C6..R99:C7' xaxis='R2:C1..R99:C1' title='defaults test #01' legend='R1:C6..R1:C7' yaxis='on'}%
Same as above, but setting defalutdata=0.
%CHART{name='defaultsTest02' table='4' data='R2:C6..R99:C7' xaxis='R2:C1..R99:C1' title='defaults test #02' legend='R1:C6..R1:C7' yaxis='on' defaultdata='0'}%
Same as above, but setting defalutdata=10.
%CHART{name='defaultsTest03' table='4' data='R2:C6..R99:C7' xaxis='R2:C1..R99:C1' title='defaults test #03' legend='R1:C6..R1:C7' yaxis='on' defaultdata='10'}%

Test gridcolor option

Show default grid color with solid grid lines.
%CHART{name='colorTest01' table='table1' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='grid color test #01' xgrid='on' ygrid='on'}%
Change the grid color to blue.
%CHART{name='colorTest02' table='table1' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='grid color test #02' xgrid='on' ygrid='on' gridcolor='#0000FF'}%
Change the grid color back to the default but make them dotted.
%CHART{name='colorTest03' table='table1' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='grid color test #03' xgrid='on' ygrid='dot' xgrid='dot'}%
Change the grid style to be 5 black dots and 5 transparent dots.
%CHART{name='colorTest04' table='table1' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='grid color test #04' xgrid='on' ygrid='on' gridcolor='#000000, #000000, #000000, #000000, #000000, transparent, transparent, transparent, transparent, transparent' ygrid='dot' xgrid='dot'}%
Change the grid style to be 4 red dots, 4 green dots, 4 blue dots and 4 transparent dots.
%CHART{name='colorTest05' table='table1' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='grid color test #05' xgrid='on' ygrid='on' gridcolor='#FF0000, #FF0000, #FF0000, #FF0000, #00FF00, #00FF00, #00FF00, #00FF00, #0000FF, #0000FF, #0000FF, #0000FF, transparent, transparent, transparent, transparent' ygrid='dot' xgrid='dot'}%
Change the grid style to be 1 black dot which basically makes a solid line.
%CHART{name='colorTest06' table='table1' data='R2:C7..R7:C7' xaxis='R2:C2..R7:C2' title='grid color test #06' xgrid='on' ygrid='on' gridcolor='#000000' ygrid='dot' xgrid='dot'}%

Tests showing both single column data ranges as well as multi-column data ranges both top to bottom as well as bottom to top and left to right and right to left.


This chart is WebStatistics data in its original order.
%CHART{name='multiLineTest01f' topic='WebStatistics' type='line' data='R2:C2..R99:C2' xaxis='R2:C1..R99:C1' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data multiLineTest01f'}%

This chart is WebStatistics data in a more human readable format of old -> new.
%CHART{name='multiLineTest02b' table='table1' type='line' data='R99:C4..R2:C4' xaxis='R99:C2..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data multiLineTest02b' legend='R1:C4..R1:C4'}%

This is a single line top/down chart
%CHART{name='multiLineTest02f' table='table1' type='line' data='R2:C4..R99:C4' xaxis='R2:C2..R99:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data multiLineTest02f' legend='R1:C4..R1:C4'}%

This is a single line bottom/up chart and should be flipped left-to-right from the chart to the left.
%CHART{name='multiLineTest02b' table='table1' type='line' data='R99:C4..R2:C4' xaxis='R99:C2..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data multiLineTest02b' legend='R1:C4..R1:C4'}%

This is a top/down, left/right chart with 4 lines in a single range.
%CHART{name='multiLineTest03f' table='table1' type='line' data='R2:C4..R99:C7' xaxis='R2:C2..R99:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data multiLineTest03f' legend='R1:C4..R1:C7'}%

This is a bottom/up left/right chart and should be flipped left-to-right from the chart to the left. Because the data is read in reverse order, the line colors will be different.
%CHART{name='multiLineTest03b' table='table1' type='line' data='R99:C4..R2:C7' xaxis='R99:C2..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data multiLineTest03b' legend='R1:C4..R1:C7'}%

This is a top/down right/left chart with 4 lines in a single range.
%CHART{name='multiLineTest04f' table='table1' type='line' data='R2:C7..R99:C4' xaxis='R2:C2..R99:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data multiLineTest04f' legend='R1:C7..R1:C4'}%

This is a bottom/up right/left chart and should be flipped left-to-right from the chart to the left. Because the data is read in reverse order, the line colors will be different.
%CHART{name='multiLineTest04b' table='table1' type='line' data='R99:C7..R2:C4' xaxis='R99:C2..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data multiLineTest04b' legend='R1:C7..R1:C4'}%

This should be identical to the above except instead of specifying multi-column data range, this specifies 4 single column data ranges. The results should be identical to above.
%CHART{name='multiLineTest05f' table='table1' type='line' data='R2:C4..R99:C4,R2:C5..R99:C5,R2:C6..R99:C6,R2:C7..R99:C7' xaxis='R2:C2..R99:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data multiLineTest05f' legend='R1:C4..R1:C4,R1:C5..R1:C5,R1:C6..R1:C6,R1:C7..R1:C7'}%

This should be identical to the chart to the left.
%CHART{name='multiLineTest05b' table='table1' type='line' data='R99:C4..R2:C4,R99:C5..R2:C5,R99:C6..R2:C6,R99:C7..R2:C7' xaxis='R99:C2..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data multiLineTest05b' legend='R1:C4..R1:C4,R1:C5..R1:C5,R1:C6..R1:C6,R1:C7..R1:C7'}%

This is identical to the above except the 4 single column data ranges are specified in a random order. The results should be identical to above with the exception that the line colors will be different.
%CHART{name='multiLineTest06f' table='table1' type='line' data='R2:C5..R99:C5,R2:C4..R99:C4,R2:C6..R99:C6,R2:C7..R99:C7' xaxis='R2:C2..R99:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data multiLineTest06f' legend='R1:C5,R1:C4,R1:C6,R1:C7'}%

Flipped of chart to the left.
%CHART{name='multiLineTest06b' table='table1' type='line' data='R99:C5..R2:C5,R99:C4..R2:C4,R99:C6..R2:C6,R99:C7..R2:C7' xaxis='R99:C2..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data multiLineTest06b' legend='R1:C5,R1:C4,R1:C6,R1:C7'}%

This is identical to the above except a multi-column range followed by a single column range. The results should be identical to above with the exception that the line colors will be different.
%CHART{name='multiLineTest07f' table='table1' type='line' data='R2:C5..R99:C7,R2:C4..R99:C4' xaxis='R2:C2..R99:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data multiLineTest07f' legend='R1:C5..R1:C7,R1:C4'}%

Flipped of chart to the left.
%CHART{name='multiLineTest07b' table='table1' type='line' data='R99:C5..R2:C7,R99:C4..R2:C4' xaxis='R99:C2..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data multiLineTest07b' legend='R1:C5..R1:C7,R1:C4'}%

This is the same as above, but using areas. Still top/down chart with 4 lines.
%CHART{name='multiAreaTest01f' table='table1' type='area' data='R2:C4..R99:C7' xaxis='R2:C2..R99:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data multiAreaTest01f' legend='R1:C4..R1:C7'}%

This is the same as above, but using areas. Still bottom/up chart and should be flipped left-to-right from the chart to the left. Because the data is read in reverse order, the area colors will be different.
%CHART{name='multiLineTest08b' table='table1' type='area' data='R99:C7..R2:C4' xaxis='R99:C2..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data multiLineTest08b' legend='R1:C7..R1:C4'}%

Same tests as above, but the data is flipped on the diagonal


This is a left/right chart
%CHART{name='flippedMultiLineTest01f' table='table2' type='line' data='R4:C2..R4:C99' xaxis='R2:C2..R2:C99' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data flippedMultiLineTest01f' legend='R4:C1'}%

This is a right/left /up chart and should be flipped left-to-right from the chart to the left.
%CHART{name='flippedMultiLineTest01b' table='table2' type='line' data='R4:C99..R4:C2' xaxis='R2:C99..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data flippedMultiLineTest01b' legend='R4:C1'}%

This is a left/right chart with 4 lines.
%CHART{name='flippedMultiLineTest03f' table='table2' type='line' data='R4:C2..R7:C99' xaxis='R2:C2..R2:C99' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data flippedMultiLineTest03f' legend='R4:C1..R7:C1'}%

This is a right/left chart and should be flipped left-to-right from the chart to the left. Because the data is read in reverse order, the line colors will be different.
%CHART{name='flippedMultiLineTest03b' table='table2' type='line' data='R4:C99..R7:C2' xaxis='R2:C99..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data flippedMultiLineTest03b' legend='R4:C1..R7:C1'}%

This should be identical to the above except instead of specifying multi-column data range, this specifies 4 single column data ranges. The results should be identical to above.
%CHART{name='flippedMultiLineTest04f' table='table2' type='line' data='R4:C2..R4:C99,R5:C2..R5:C99,R6:C2..R6:C99,R7:C2..R7:C99' xaxis='R2:C2..R2:C99' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data flippedMultiLineTest04f' legend='R4:C1,R5:C1,R6:C1,R7:C1'}%

This should be identical to the above except instead of specifying a flippedMulti-column data range, this specifies 4 single column data ranges in reverse order. Because the data is read in reverse order, the line colors will be different.
%CHART{name='multiLineTest04b' table='table1' type='line' data='R99:C7..R2:C4' xaxis='R99:C2..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data multiLineTest04b' legend='R1:C7..R1:C4'}%

This is identical to the above except the 4 single column data ranges are specified in a random order. The results should be identical to above with the exception that the line colors will be different.
%CHART{name='flippedMultiLineTest05f' table='table2' type='line' data='R5:C2..R5:C99,R4:C2..R4:C99,R6:C2..R6:C99,R7:C2..R7:C99' xaxis='R2:C2..R2:C99' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data flippedMultiLineTest05f' legend='R5:C1,R4:C1,R6:C1,R7:C1'}%

Flipped of chart to the left.
%CHART{name='flippedMultiLineTest05b' table='table2' type='line' data='R5:C99..R5:C2,R4:C99..R4:C2,R6:C99..R6:C2,R7:C99..R7:C2' xaxis='R2:C99..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data flippedMultiLineTest05b' legend='R5:C1,R4:C1,R6:C1,R7:C1'}%

This is identical to the above except a flippedMulti-column range followed by a single column range. The results should be identical to above with the exception that the line colors will be different.
%CHART{name='flippedMultiLineTest06f' table='table2' type='line' data='R5:C2..R7:C99,R4:C2..R4:C99' xaxis='R2:C2..R2:C99' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data flippedMultiLineTest06f' legend='R5:C1..R7:C1,R4:C1'}%

Flipped of chart to the left.
%CHART{name='flippedMultiLineTest06b' table='table2' type='line' data='R5:C99..R7:C2,R4:C99..R4:C2' xaxis='R2:C99..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data flippedMultiLineTest06b' legend='R5:C1..R7:C1,R4:C1'}%

This is the same as above, but using areas. Still left/right chart with 4 lines.
%CHART{name='flippedMultiAreaTest01f' table='table2' type='area' data='R4:C2..R7:C99' xaxis='R2:C2..R2:C99' yaxis='on' xaxisangle='90' datalabel='on' title='Forward data flippedMultiAreaTest01f' legend='R4:C1..R7:C1'}%

This is the same as above, but using areas. Still right/left chart and should be flipped left-to-right from the chart to the left. Because the data is read in reverse order, the area colors will be different.
%CHART{name='flippedMultiAreaTest01b' table='table2' type='area' data='R7:C99..R4:C2' xaxis='R2:C99..R2:C2' yaxis='on' xaxisangle='90' datalabel='on' title='Backward data flippedMultiAreaTest01b' legend='R7:C1..R4:C1'}%

Error handling tests

Description Expected Output Output
No parameters passed to CHART
%CHART{}%
ChartPlugin error: parameter name must be specified ChartPlugin error:
parameter name must be specified
name defined, but no data specified.
%CHART{name='errorTest02'}%
ChartPlugin error: parameter data must be specified ChartPlugin error:
parameter data must be specified
Invalid type of badtype.
%CHART{name='errorTest03' type='badtype' data='R2:C7..R7:C7'}%
ChartPlugin error: ChartPlugin error: Invalid value of badtype for parameter type ChartPlugin error:
Invalid value of badtype for
parameter type
Specified topic page does not exist.
%CHART{name='errorTest04' topic='TopicDoesNotExist' data='R2:C7..R7:C7'}%
ChartPlugin error: Error retrieving TWiki topic TWiki.TopicDoesNotExist ChartPlugin error:
Error retrieving TWiki topic
TWiki.TopicDoesNotExist
Specified web page does not exist.
%CHART{name='errorTest05' web='WebDoesNotExist' data='R2:C7..R7:C7'}%
ChartPlugin error: Error retrieving TWiki topic webDoesNotExist.ChartPluginTests ChartPlugin error:
Error retrieving TWiki topic
WebDoesNotExist.ChartPluginTests
Invalid table number.
%CHART{name='errorTest06' table='999' data='R2:C7..R7:C7'}%
ChartPlugin error: parameter table is not valid table; the specified table '999' does not exist ChartPlugin error:
parameter table is not valid table;
the specified table '999' does not
exist.
invalid xaxis value.
%CHART{name='errorTest07' data='R2:C4..R7:C7' xaxis='R2:C4..R7:C7'}%
ChartPlugin error: parameter xaxis specifies multiple (6x4) rows and columns ChartPlugin error:
parameter xaxis specifies multiple
(6X4) rows and columns.
ymin = =ymax such that there is no chart height.
%CHART{name='errorTest09' data='R2:C4..R7:C7' ymin='10' ymax='10'}%
ChartPlugin error: chart error: name=errorTest09: No Chart height with ymin(10) == ymax(10) ChartPlugin error:
chart error: name=errorTest09: No Chart
height with ymin1(10) == ymax(10)
ymin > ymax.
%CHART{name='errorTest10' data='R2:C4..R7:C7' ymin='10' ymax='-10'}%
ChartPlugin error: chart error: name=errorTest10: Y max (-10) < Y Min (10) ChartPlugin error:
chart error: name=errorTest10: Y max1
(-10) < Y Min1 (10)
Only 1 point of data.
%CHART{name='errorTest11' data='R2:C4..R2:C7'}%
ChartPlugin error: chart error: name=errorTest11: Error: Number of data points needs to be > 1
Invalid legend.
%CHART{name='errorTest12' data='R2:C4..R7:C7' legend='R1:C4'}%
ChartPlugin error: parameter legend contains an invalid value 'R1:C4' since it specifies 1 legends and there are 4 data sets. ChartPlugin error:
parameter legend contains an invalid
value 'R1:C4' since it specifies 1
legends and there are 4 data sets.
scale=semilog and data <= 0.
%CHART{name='errorTest13' data='R2:C3..R7:C7' scale='semilog'}%
ChartPlugin error: data (0) <= 0 not valid when scale=semilog ChartPlugin error:
minimum data (0) <= 0 not valid when
scale=semilog

-- Contributors: TWiki:Main/TaitCyrus, TWiki:Main/PeterThoeny - 2010-04-07 -- Updated: TWiki:Main/TaitCyrus - 2011-04-25

Topic revision: r3 - 2011-04-27 - PeterThoeny
 
Twitter Delicious Facebook Digg Google Bookmarks E-mail LinkedIn Reddit StumbleUpon    
  • Download TWiki
TWiki logo Powered by PerlIdeas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2012 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.