List of usage examples for org.jfree.data.general DatasetUtilities createPieDatasetForRow
public static PieDataset createPieDatasetForRow(CategoryDataset dataset, int row)
From source file:net.sourceforge.processdash.ui.web.reports.DiscChart.java
public static JFreeChart createDiscChart(ResultSet data, Map parameters) { // data.sortBy(1, true); CategoryDataset catData = data.catDataSource(); PieDataset pieData = null;//w w w.j a va2s .c o m if (catData.getColumnCount() == 1) pieData = DatasetUtilities.createPieDatasetForColumn(catData, 0); else pieData = DatasetUtilities.createPieDatasetForRow(catData, 0); DiscPlot plot = new DiscPlot(pieData); plot.setInsets(new RectangleInsets(0.0, 5.0, 5.0, 5.0)); plot.setDrawingSupplier(DRAWING_SUPPLIER_FACTORY.newDrawingSupplier()); JFreeChart chart = new JFreeChart(null, JFreeChart.DEFAULT_TITLE_FONT, plot, false); if (parameters.get("skipItemLabels") != null || parameters.get("skipDiscLabels") != null) plot.setLabelGenerator(null); else if (parameters.get("discLabelFontSize") != null) try { float fontSize = Float.parseFloat((String) parameters.get("discLabelFontSize")); plot.setLabelFont(plot.getLabelFont().deriveFont(fontSize)); } catch (Exception lfe) { } if (parameters.get("ellipse") != null) ((StandardDiscItemDistributor) plot.getDiscDistributor()).setCircular(false); String interiorGap = (String) parameters.get("interiorGap"); if (interiorGap != null) try { plot.setInteriorGap(Integer.parseInt(interiorGap) / 100.0); } catch (NumberFormatException e) { } String interiorSpacing = (String) parameters.get("interiorSpacing"); if (interiorSpacing != null) try { plot.setInteriorGap(Integer.parseInt(interiorSpacing) / 200.0); } catch (NumberFormatException e) { } return chart; }
From source file:net.sourceforge.processdash.ui.web.reports.RadarChart.java
/** Create a radar chart. */ @Override/*from w w w .j a v a2 s . c o m*/ public JFreeChart createChart() { maybeScaleDataAxes(); CategoryDataset catData = data.catDataSource(); PieDataset pieData = null; if (catData.getRowCount() == 1) pieData = DatasetUtilities.createPieDatasetForRow(catData, 0); else pieData = DatasetUtilities.createPieDatasetForColumn(catData, 0); RadarPlot plot = new RadarPlot(pieData); JFreeChart chart = new JFreeChart(null, JFreeChart.DEFAULT_TITLE_FONT, plot, false); if (parameters.get("skipAxisLabels") != null) plot.setShowAxisLabels(false); String interiorGap = getParameter("interiorGap"); if (interiorGap != null) try { plot.setInteriorGap(Integer.parseInt(interiorGap) / 100.0); } catch (NumberFormatException e) { } String interiorSpacing = getParameter("interiorSpacing"); if (interiorSpacing != null) try { plot.setInteriorGap(Integer.parseInt(interiorSpacing) / 200.0); } catch (NumberFormatException e) { } return chart; }
From source file:net.sourceforge.processdash.ui.web.reports.PieChart.java
/** Create a line chart. */ @Override//from w w w . j a v a2 s . c o m public JFreeChart createChart() { CategoryDataset catData = data.catDataSource(); PieDataset pieData = null; if (catData.getColumnCount() == 1) pieData = DatasetUtilities.createPieDatasetForColumn(catData, 0); else pieData = DatasetUtilities.createPieDatasetForRow(catData, 0); JFreeChart chart = null; if (get3DSetting()) { chart = ChartFactory.createPieChart3D(null, pieData, true, true, false); chart.getPlot().setForegroundAlpha(ALPHA); } else { chart = ChartFactory.createPieChart(null, pieData, true, true, false); } PiePlot plot = (PiePlot) chart.getPlot(); if (parameters.get("skipItemLabels") != null || parameters.get("skipWedgeLabels") != null) plot.setLabelGenerator(null); else if (parameters.get("wedgeLabelFontSize") != null) try { float fontSize = Float.parseFloat((String) parameters.get("wedgeLabelFontSize")); plot.setLabelFont(plot.getLabelFont().deriveFont(fontSize)); } catch (Exception lfe) { } if (parameters.get("ellipse") != null) plot.setCircular(true); else plot.setCircular(false); Object colorScheme = parameters.get("colorScheme"); if ("byPhase".equals(colorScheme)) maybeConfigurePhaseColors(plot, pieData); else if ("consistent".equals(colorScheme)) // since 2.0.9 configureConsistentColors(plot, pieData); else if (parameters.containsKey("c1")) configureIndividualColors(plot, pieData); String interiorGap = (String) parameters.get("interiorGap"); if (interiorGap != null) try { plot.setInteriorGap(Integer.parseInt(interiorGap) / 100.0); } catch (NumberFormatException e) { } String interiorSpacing = (String) parameters.get("interiorSpacing"); if (interiorSpacing != null) try { plot.setInteriorGap(Integer.parseInt(interiorSpacing) / 200.0); } catch (NumberFormatException e) { } if (!parameters.containsKey("showZeroValues")) { plot.setIgnoreZeroValues(true); plot.setIgnoreNullValues(true); } return chart; }
From source file:com.liferay.portlet.polls.action.ViewChartAction.java
@Override public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { try {/* w w w . j a va2 s .c o m*/ ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); long questionId = ParamUtil.getLong(request, "questionId"); String chartType = ParamUtil.getString(request, "chartType", "pie"); CategoryDataset dataset = PollsUtil.getVotesDataset(questionId); String chartName = themeDisplay.translate("vote-results"); String xName = themeDisplay.translate("choice"); String yName = themeDisplay.translate("votes"); JFreeChart chart = null; if (chartType.equals("area")) { chart = ChartFactory.createAreaChart(chartName, xName, yName, dataset, PlotOrientation.VERTICAL, true, false, false); } else if (chartType.equals("horizontal_bar")) { chart = ChartFactory.createBarChart(chartName, xName, yName, dataset, PlotOrientation.HORIZONTAL, true, false, false); } else if (chartType.equals("line")) { chart = ChartFactory.createLineChart(chartName, xName, yName, dataset, PlotOrientation.VERTICAL, true, false, false); } else if (chartType.equals("vertical_bar")) { chart = ChartFactory.createBarChart(chartName, xName, yName, dataset, PlotOrientation.VERTICAL, true, false, false); } else { PieDataset pieData = DatasetUtilities.createPieDatasetForRow(dataset, 0); chart = ChartFactory.createPieChart(chartName, pieData, true, false, false); } response.setContentType(ContentTypes.IMAGE_JPEG); OutputStream os = response.getOutputStream(); ChartUtilities.writeChartAsJPEG(os, chart, 400, 400); return null; } catch (Exception e) { PortalUtil.sendError(e, request, response); return null; } }
From source file:com.liferay.samplestrutsliferay.struts.action.ViewChartAction.java
@Override public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { try {/*from w w w . ja va2s . c o m*/ if (_log.isInfoEnabled()) { _log.info("execute"); } String attrName = "chart_name"; // Application scoped session attributes can be fetched from the // servlet directly. Portlet scoped session attributes can be // fetched from Sun's PortletSessionUtil. HttpSession session = request.getSession(); String chartName = (String) session.getAttribute(attrName); //(String)_getAttribute(request, attrName); // Chart String chartType = request.getParameter("chart_type"); CategoryDataset dataset = _getDataset(); String xName = "Soda"; String yName = "Votes"; JFreeChart chart = null; if (chartType.equals("area")) { chart = ChartFactory.createAreaChart(chartName, xName, yName, dataset, PlotOrientation.VERTICAL, true, false, false); } else if (chartType.equals("horizontal_bar")) { chart = ChartFactory.createBarChart(chartName, xName, yName, dataset, PlotOrientation.HORIZONTAL, true, false, false); } else if (chartType.equals("line")) { chart = ChartFactory.createLineChart(chartName, xName, yName, dataset, PlotOrientation.VERTICAL, true, false, false); } else if (chartType.equals("vertical_bar")) { chart = ChartFactory.createBarChart(chartName, xName, yName, dataset, PlotOrientation.VERTICAL, true, false, false); } else { PieDataset pieData = DatasetUtilities.createPieDatasetForRow(dataset, 0); chart = ChartFactory.createPieChart(chartName, pieData, true, false, false); } response.setContentType("image/jpeg"); OutputStream out = response.getOutputStream(); ChartUtilities.writeChartAsJPEG(out, chart, 400, 400); return mapping.findForward("/common/null.jsp"); } catch (Exception e) { request.setAttribute(PageContext.EXCEPTION, e); return mapping.findForward("/common/error.jsp"); } }
From source file:com.liferay.samplestruts.struts.action.ViewChartAction.java
@Override public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest request, HttpServletResponse response) throws Exception { try {/*from w w w . j av a 2 s . c om*/ if (_log.isInfoEnabled()) { _log.info("execute"); } String attrName = "chart_name"; // Application scoped session attributes can be fetched from the // servlet directly. Portlet scoped session attributes can be // fetched from Sun's PortletSessionUtil. HttpSession session = request.getSession(); String chartName = (String) session.getAttribute(attrName); //(String)_getAttribute(request, attrName); // Chart String chartType = request.getParameter("chart_type"); CategoryDataset dataset = _getDataset(); String xName = "Soda"; String yName = "Votes"; JFreeChart chart = null; if (chartType.equals("area")) { chart = ChartFactory.createAreaChart(chartName, xName, yName, dataset, PlotOrientation.VERTICAL, true, false, false); } else if (chartType.equals("horizontal_bar")) { chart = ChartFactory.createBarChart(chartName, xName, yName, dataset, PlotOrientation.HORIZONTAL, true, false, false); } else if (chartType.equals("line")) { chart = ChartFactory.createLineChart(chartName, xName, yName, dataset, PlotOrientation.VERTICAL, true, false, false); } else if (chartType.equals("vertical_bar")) { chart = ChartFactory.createBarChart(chartName, xName, yName, dataset, PlotOrientation.VERTICAL, true, false, false); } else { PieDataset pieData = DatasetUtilities.createPieDatasetForRow(dataset, 0); chart = ChartFactory.createPieChart(chartName, pieData, true, false, false); } response.setContentType("image/jpeg"); OutputStream out = response.getOutputStream(); ChartUtilities.writeChartAsJPEG(out, chart, 400, 400); return actionMapping.findForward("/common/null.jsp"); } catch (Exception e) { request.setAttribute(PageContext.EXCEPTION, e); return actionMapping.findForward("/common/error.jsp"); } }
From source file:com.liferay.polls.web.internal.portlet.action.ViewChartMVCResourceCommand.java
@Override protected void doServeResource(ResourceRequest resourceRequest, ResourceResponse resourceResponse) throws Exception { try {//from w w w .ja v a 2 s . c o m ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY); long questionId = ParamUtil.getLong(resourceRequest, "questionId"); String chartType = ParamUtil.getString(resourceRequest, "chartType", "pie"); String chartName = themeDisplay.translate("vote-results"); String xName = themeDisplay.translate("choice"); String yName = themeDisplay.translate("votes"); CategoryDataset categoryDataset = PollsUtil.getVotesDataset(questionId); JFreeChart jFreeChat = null; if (chartType.equals("area")) { jFreeChat = ChartFactory.createAreaChart(chartName, xName, yName, categoryDataset, PlotOrientation.VERTICAL, true, false, false); } else if (chartType.equals("horizontal_bar")) { jFreeChat = ChartFactory.createBarChart(chartName, xName, yName, categoryDataset, PlotOrientation.HORIZONTAL, true, false, false); } else if (chartType.equals("line")) { jFreeChat = ChartFactory.createLineChart(chartName, xName, yName, categoryDataset, PlotOrientation.VERTICAL, true, false, false); } else if (chartType.equals("vertical_bar")) { jFreeChat = ChartFactory.createBarChart(chartName, xName, yName, categoryDataset, PlotOrientation.VERTICAL, true, false, false); } else { PieDataset pieDataset = DatasetUtilities.createPieDatasetForRow(categoryDataset, 0); jFreeChat = ChartFactory.createPieChart(chartName, pieDataset, true, false, false); } resourceResponse.setContentType(ContentTypes.IMAGE_JPEG); OutputStream outputStream = resourceResponse.getPortletOutputStream(); ChartUtilities.writeChartAsJPEG(outputStream, jFreeChat, 400, 400); } catch (Exception e) { PortletSession portletSession = resourceRequest.getPortletSession(); PortletContext portletContext = portletSession.getPortletContext(); PortletRequestDispatcher requestDispatcher = portletContext.getRequestDispatcher("/polls/error.jsp"); requestDispatcher.forward(resourceRequest, resourceResponse); } }
From source file:org.jfree.chart.demo.JFreeChartDemoBase.java
/** * Creates and returns a sample pie chart. * * @return a sample pie chart.// w w w . j av a2 s . c o m */ public JFreeChart createPieChartOne() { // create a default chart based on some sample data... final String title = this.resources.getString("pie.pie1.title"); final CategoryDataset data = DemoDatasetFactory.createCategoryDataset(); final PieDataset extracted = DatasetUtilities.createPieDatasetForRow(data, 0); final JFreeChart chart = ChartFactory.createPieChart(title, extracted, true, true, false); // then customise it a little... chart.setBackgroundPaint(new GradientPaint(0, 0, Color.white, 0, 1000, Color.orange)); final PiePlot plot = (PiePlot) chart.getPlot(); plot.setCircular(false); // make section 1 explode by 100%... plot.setExplodePercent(1, 1.00); return chart; }
From source file:org.jfree.chart.demo.JFreeChartDemoBase.java
/** * Creates and returns a sample pie chart which compares 2 datasets. * * @return a sample pie chart.// w ww . j av a2s .c o m * @author <a href="mailto:opensource@objectlab.co.uk">Benoit Xhenseval</a> * @since 0.9.18 */ public JFreeChart createPieChartThree() { // create a default chart based on some sample data... String title = this.resources.getString("pie.pie3.title"); final double[][] data = new double[][] { { 10.0, 4.0, 14.0, 12.0, 12.0 }, { 9.0, 7.0, 13.7, 15.0, 3.0 } }; CategoryDataset dataset = DatasetUtilities.createCategoryDataset("Series ", "Category ", data); PieDataset extracted = DatasetUtilities.createPieDatasetForRow(dataset, 0); PieDataset extracted2 = DatasetUtilities.createPieDatasetForRow(dataset, 1); // generate a basic pie chart with title // comparing extracted with extracted2 // a difference of 40% or more will trigger maximum brightness in red or green // true green is for increase // true for legend // true for tooltips // false for urls // true for subtitle // true for showing the difference JFreeChart chart = ChartFactory.createPieChart(title, extracted, extracted2, 40, true, true, true, false, true, true); return chart; }
From source file:org.bhavaya.ui.view.ChartView.java
private JFreeChart createPieChart() { JFreeChart chart;/*from w w w .j ava2s. c om*/ if (isPlot3D()) { chart = ChartFactory.createPieChart3D(getName(), DatasetUtilities.createPieDatasetForRow(tableModelDataSet, 0), true, true, false); chart.getPlot().setForegroundAlpha(0.5f); } else { chart = ChartFactory.createPieChart(getName(), DatasetUtilities.createPieDatasetForRow(tableModelDataSet, 0), true, true, false); } return chart; }