<%// BasicRequirements:%>


<%
// Basic requirements for creating a barline chart:
//   1) Create a BarLineChart instance and a data source 
//   2) Create a data model and attach the data source to it
//   3) Assign the Category variable role, and the
//      BarResponse and LineResponse variable roles
//   4) Assign the data model to the BarLineChart
//   5) Set HTTP-specific response and request functionality
// To set a title or footnote, get the appropriate BarLineChart
// title or footnote, and then set the returned object's text.
%>

<%@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"
%>

   <%
     // 1) 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);
   
     // 2) Create a data model and attach the data source
           BarLineChartTableDataModel dataModel=
              new BarLineChartTableDataModel(tma);

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

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

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

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