1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
| import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartRenderingInfo;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.entity.StandardEntityCollection;
import org.jfree.chart.servlet.ServletUtilities;
import org.jfree.data.general.DefaultPieDataset;
public class GraphePieServlet extends HttpServlet
{
public void service (HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException
{
DefaultPieDataset data = new DefaultPieDataset();
data.setValue("Francais",655);
data.setValue("Anglais",234);
data.setValue("Chinois",9888);
data.setValue("Italien",33);
JFreeChart chart = ChartFactory.createPieChart("Par langue",data,true,true,true);
ChartRenderingInfo chartRenderingInfo = new ChartRenderingInfo(new StandardEntityCollection());
int largeur = 900 ;
int hauteur = 600 ;
String filename = ServletUtilities.saveChartAsJPEG(chart, largeur, hauteur, chartRenderingInfo, request.getSession());
Graphe graphe = this.initImage(request, chartRenderingInfo, filename);
request.setAttribute("graphe",graphe) ;
RequestDispatcher disp=getServletContext().getRequestDispatcher("/graphe.jsp");
disp.forward(request,response) ;
}
private Graphe initImage(HttpServletRequest request,ChartRenderingInfo chartRenderingInfo, String filename)
{
String sMap = ChartUtilities.getImageMap(filename, chartRenderingInfo);
String src = request.getContextPath()+"/servlet/DisplayChart?filename=" + filename ;
String useMap = "#" + filename ;
Graphe graphe = new Graphe() ;
graphe.setMap(sMap);
graphe.setSrc(src) ;
graphe.setUseMap(useMap) ;
return graphe ;
}
} |
Partager