...
The org.pentaho.chart.ChartData
interface is the format for data that is passed to Pentaho ChartBeans. ChartData
extends javax.swing.table.TableModel
to add row, column, and cell metadata. For example, ChartData
allows you to set row and column names. Row and column names are useful for giving meaningful names to series and categories. A single implementation, org.pentaho.chart.data.ChartTableModel
, is provided.
Chart Document
The org.pentaho.chart.core.ChartDocument
class is a Java representation of a Pentaho ChartBeans XML document. It is a tree of org.pentaho.chart.core.ChartElement
instances. The structure of a A chart document includes elements like title, series, and plot.
...
Pentaho ChartBeans uses Cascading Style Sheets (CSS) to style charts. Pentaho ChartBeans is not limited to the W3C's style attributes (although it attempts to use them where appropriate, for familiarity). By using CSS, Pentaho ChartBeans allows you to completely separate chart structure and style. You can use external style sheets, inline selectors, as well as class and style attributes. Using an external style sheet would allow an organization to create a consistent look to all of its charts.
- Start with the first action the user takes to solve the problem or accomplish the task. Try to avoid sub-steps if possible - refine your list to each separate task a user needs to execute.
- This is the next item in the list, chronologically.
- Etc., etc., until the last step.
Results
Explain briefly to users how they will know that the process was successful. Sometimes this is obvious; if so, leave this section out.
Examples
Reserve your sample code, example text, and screen shots for this area unless it is absolutely necessary to include them above.
Example
Chart Data
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
private static ChartTableModel createChartTableModel() {
Object[][] dataArray = { { 5.55, 10.11, 20.22 }, { 30.33, 40.44, 50.55 }, { 31.33, 99.44, 150.55 },
{ 32.33, 1.44, 30.55 }, { 34.33, 88.44, 77.55 }, { 35.33, 22.44, 54.55 }, { 36.33, 33.44, 52.55 },
{ 37.33, 76.44, 54.55 }, { 38.33, 7.44, 59.55 }, { 39.33, 48.44, 56.55 }, { 40.33, 19.44, 57.55 },
{ 50.33, 104.44, 36.55 }, { 60.33, 23.44, 74.55 }, { 20.33, 90.44, 80.55 }, { 60.33, 18.44, 27.55 },
{ 10.33, 22.44, 97.55 }, { 20.33, 59.44, 55.55 }, { 90.33, 140.44, 22.55 }, { 100.33, 56.44, 76.55 },
{ 40.33, 50.44, 50.55 }, { 60.66, 70.77, 80.88 } };
ChartTableModel data = new ChartTableModel();
data.setData(dataArray);
// give names to the categories
data.setColumnName(0, "budget");
data.setColumnName(1, "sales");
data.setColumnName(2, "forecast");
// give names to the series
final String ROW_NAME_KEY = "row-name";
data.setRowMetadata(0, ROW_NAME_KEY, "1");
data.setRowMetadata(1, ROW_NAME_KEY, "2");
// ----- lines omitted -----
data.setRowMetadata(20, ROW_NAME_KEY, "21");
return data;
}
|
Chart Document
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
<chart xmlns="http://reporting.pentaho.org/namespaces/charting/1.0">
<!-- external style sheet -->
<stylesheet href="theme.css" />
<!-- chart title -->
<title>Bar Chart Using Pentaho ChartBeans</title>
<!-- styling on individual series using style and class attributes -->
<series style="-x-pentaho-chart-series-type: bar; -x-pentaho-chart-bar-style: bar;" class="series1" />
<series class="series2" />
<!-- lines omitted -->
<series class="series18" />
<!-- wrap colors because there are more series than colors in the theme -->
<series class="series1" />
<series class="series2" />
<series class="series3" />
<!-- styling on plot using style attribute -->
<plot style="-x-pentaho-chart-orientation: horizontal"/>
</chart>
|
Troubleshooting
What can go wrong? Cover common and known problems, then cover how you can discover the root of a problem (logging, debugging symbols, etc.)
...