01 import java.awt.*; 
02 import java.io.*; 
03 import javax.servlet.*; 
04 import javax.servlet.http.*; 
05 
06 import Acme.JPM.Encoders.GifEncoder; 
07 import javachart.chart.*; 
08 
09 public class AutoChart extends HttpServlet 
10 
11   static final int WIDTH = 450
12   static final int HEIGHT = 320
13 
14   public void doGet(HttpServletRequest req, HttpServletResponse res
15                       throws ServletException, IOException {
16 
17   ServletOutputStream out = res.getOutputStream()
18 
19   Frame frame = null
20   Graphics g = null
21 
22    try 
23     //vytvoríme graf 
24     BarChart chart = new BarChart("Audi a Škoda")
25   
26     //určíme mu názov 
27     chart.getBackground().setTitleFont(new Font("Serif", Font.PLAIN, 24))
28     chart.getBackground().setTitleString("Porovnanie Audi a Škoda.")
29   
30     //zobrazíme, umiestnime ho a nastavíme legendu 
31     chart.setLegendVisible(true)
32     chart.getLegend().setLlX(0.4)
33     chart.getLegend().setLlY(0.75)
34     chart.getLegend().setIconHeight(0.04)
35     chart.getLegend().setIconWidth(0.04)
36     chart.getLegend().setIconGap(0.02)
37     chart.getLegend().setVerticalLayout(false)
38   
39     //pridáme dáta a popisky 
40     double[] audiData = {450520740563850}
41     chart.addDataSet("Audi", audiData)
42   
43     double[] skodaData = {14351650155514401595}
44     chart.addDataSet("Škoda", skodaData)
45   
46     String[] labels = {"1999""2000""2001""2002""2003"}
47     chart.getXAxis().addLabels(labels)
48   
49     //nastavíme farbu stĺpcov 
50     chart.getDatasets()[0].getGc().setFillColor(Color.red)
51     chart.getDatasets()[1].getGc().setFillColor(Color.blue)
52   
53     //pomenujeme osy 
54     chart.getXAxis().setTitleString("Rok")
55     chart.getYAxis().setTitleString("Predaj")
56   
57     //nastavíme vežkos 
58     chart.resize(WIDTH, HEIGHT)
59   
60     //vytvoríme frame 
61     frame = new Frame()
62     frame.addNotify()
63   
64     //vytvoríme image 
65     Image image = frame.createImage(WIDTH, HEIGHT)
66     g = image.getGraphics()
67   
68     //vykreslíme graf 
69     chart.drawGraph(g)
70   
71     //zakódujeme do GIFu a pošleme 
72     res.setContentType("image/gif")
73     GifEncoder encoder = new GifEncoder(image, out)
74     encoder.encode()
75    
76    finally 
77     //uvožníme zdroje 
78     if (g != nullg.dispose()
79     if (frame != nullframe.removeNotify()
80    }
81   }
82 }