<%// Subgroup Data:%>


<%
// To generate a barline chart that displays subgroups (segments) within each
// bar in the bar chart, assign the Subgroup variable role to a categorical
// variable whose unique values can be used to form the bar segments. 
%>

<%@page import="com.sas.models.SimpleTable,
        com.sas.swing.models.TableModelAdapter,
        com.sas.servlet.tbeans.graphics.html.BarLineChart,
        com.sas.graphics.components.barlinechart.BarLineChartTableDataModel,
        com.sas.graphics.components.AnalysisVariable,
        com.sas.graphics.components.ClassificationVariable"
%>

   <%
     // Create a BarLineChart instance
        BarLineChart barLineChart = new BarLineChart();
     // Create a simple SAS table and add data to it
        SimpleTable table = new SimpleTable();
   %>
 
   <%@ include file="EnergyData.jsp" %>
         
   
   <%
     // Convert a simple SAS table to a simple Java Swing table
        TableModelAdapter tma= new TableModelAdapter(table);
        tma.setFormattedDataUsed(false);
   
     // Create a data model and attach the data source
        BarLineChartTableDataModel dataModel=
           new BarLineChartTableDataModel(tma);

     // Assign the Category variable role, and the
     // BarResponse and LineResponse variable roles
     
     // 1) Set subgroup variable
        dataModel.setSubgroupVariable(
           new ClassificationVariable("Year"));
        dataModel.setCategoryVariable(
           new ClassificationVariable("EnergyType"));
        dataModel.setBarResponseVariable(
           new AnalysisVariable("Produced"));
        dataModel.setLineResponseVariable(
           new AnalysisVariable("Consumed"));

     // Assign the data model to the BarLineChart
        barLineChart.setDataModel(dataModel);

     // Set a graph title
        barLineChart.getTitle1().setText("Energy Production");

     // Set HTTP-specific response and request functionality
	barLineChart.setResponse(response);
	barLineChart.setRequest(request);
	
     // Write the chart to the display
        barLineChart.write(out);
     
%>