<%// ChangeColorPalette:%>
<%
// By default, a Tile chart's colors are determined by the ColorScheme
// of the GraphStyle that is in effect for the chart. You can use the
// TileChartModel as follows to change a chart's colors:
// - Call setColorPaletteType() to set a palette type for the colors
// - Call getDataElementStyles() and use the returned object to specify colors
//
// This example sets a COLOR_PALETTE_COLOR_SPECTRUM palette type, which
// uses a ColorPosition object to set the colors and their inflection points
// along the color spectrum.
%>
<%@page import="com.sas.servlet.tbeans.graphics.html.TileChart,
com.sas.graphics.components.tilechart.TileChartModel,
com.sas.graphics.components.GraphConstants,
com.sas.graphics.components.ColorPosition,
com.sas.graphics.components.tilechart.TileChartTableDataModel,
com.sas.graphics.components.AnalysisVariable,
com.sas.graphics.components.ClassificationVariable,
com.sas.graphics.components.ClassificationVariableList,
java.awt.Color,
javax.swing.table.DefaultTableModel"
%>
<%
// Create a TileChart and a data source
TileChart tileChart=new TileChart();
%>
<%@ include file="SalesData.jsp" %>
<%
// Get the chart's graph model
TileChartModel graphModel = tileChart.getGraphModel();
// Set an alternative color palette for the chart
graphModel.setColorPaletteType(GraphConstants.COLOR_PALETTE_COLOR_SPECTRUM);
ColorPosition cp[] = {
new ColorPosition(new Color(204,153,102), 0.0),
new ColorPosition(new Color(255,255,153), 0.35),
new ColorPosition(new Color(204,204,153), 0.5),
new ColorPosition(new Color(102,153,102), 1.0)
};
graphModel.getDataElementStyles().setContinuousColorSpectrum(cp);
// Create a data model and attach the data source
TileChartTableDataModel dataModel=
new TileChartTableDataModel();
dataModel.setModel(dataTable);
// Define multiple Classification variables
ClassificationVariableList multiTile=new ClassificationVariableList(
new ClassificationVariable[] {
new ClassificationVariable("Region"),
new ClassificationVariable("Product"),
new ClassificationVariable("Subsidiary")
} );
// Assign the classification list to the Tile variable role
dataModel.setTileVariable(multiTile);
// Assign the Size variable role
dataModel.setSizeVariable(
new AnalysisVariable("Inventory"));
// Assign the data model to the TileChart
tileChart.setDataModel(dataModel);
// Set a graph title
tileChart.getTitle1().setText("tile size represents Inventory");
// Set HTTP-specific response and request functionality
tileChart.setResponse(response);
tileChart.setRequest(request);
// Set a graph size and write the chart to the display
tileChart.setWidth(600);
tileChart.setHeight(450);
tileChart.write(out);
%>