List of usage examples for org.jfree.chart ChartFactory createLineChart
public static JFreeChart createLineChart(String title, String categoryAxisLabel, String valueAxisLabel, CategoryDataset dataset, PlotOrientation orientation, boolean legend, boolean tooltips, boolean urls)
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 a2 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:hudson.plugins.codeviation.MetricsAction.java
private JFreeChart createChart(CategoryDataset dataset, int maxVal) { final JFreeChart chart = ChartFactory.createLineChart(null, // chart title null, // unused "count", // range axis label dataset, // data PlotOrientation.VERTICAL, // orientation true, // include legend true, // tooltips false // urls );/*from ww w . j a v a2 s . c om*/ // NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART... final LegendTitle legend = chart.getLegend(); legend.setPosition(RectangleEdge.RIGHT); chart.setBackgroundPaint(Color.white); final CategoryPlot plot = chart.getCategoryPlot(); // plot.setAxisOffset(new Spacer(Spacer.ABSOLUTE, 5.0, 5.0, 5.0, 5.0)); plot.setBackgroundPaint(Color.WHITE); plot.setOutlinePaint(null); plot.setRangeGridlinesVisible(true); plot.setRangeGridlinePaint(Color.black); CategoryAxis domainAxis = new ShiftedCategoryAxis(null); plot.setDomainAxis(domainAxis); domainAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_90); domainAxis.setLowerMargin(0.0); domainAxis.setUpperMargin(0.0); domainAxis.setCategoryMargin(0.0); final NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis(); rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); rangeAxis.setUpperBound(maxVal); rangeAxis.setLowerBound(0); final LineAndShapeRenderer renderer = (LineAndShapeRenderer) plot.getRenderer(); renderer.setStroke(new BasicStroke(4.0f)); // crop extra space around the graph plot.setInsets(new RectangleInsets(5.0, 0, 0, 5.0)); return chart; }
From source file:cz.cvut.kbe.crypthelper.ui.MainPanel.java
public void setChartData() { CategoryDataset dataset = getDataset(); JFreeChart chart = ChartFactory.createLineChart("etnost znak", "Znak", "etnost (%)", dataset, PlotOrientation.VERTICAL, false, false, false); styleChart(chart);// w w w .ja v a2s. co m ChartPanel chartPanel = new ChartPanel(chart); chartPanel.setMaximumDrawHeight(800); chartPanel.setMaximumDrawHeight(600); graphPanel.removeAll(); graphPanel.add(chartPanel, BorderLayout.CENTER); graphPanel.updateUI(); bottomPanel.setVisible(true); }
From source file:net.sf.mzmine.modules.visualization.intensityplot.IntensityPlotFrame.java
public IntensityPlotFrame(ParameterSet parameters) { PeakList peakList = parameters.getParameter(IntensityPlotParameters.peakList).getValue()[0]; String title = "Intensity plot [" + peakList + "]"; String xAxisLabel = parameters.getParameter(IntensityPlotParameters.xAxisValueSource).getValue().toString(); String yAxisLabel = parameters.getParameter(IntensityPlotParameters.yAxisValueSource).getValue().toString(); // create dataset dataset = new IntensityPlotDataset(parameters); // create new JFreeChart logger.finest("Creating new chart instance"); Object xAxisValueSource = parameters.getParameter(IntensityPlotParameters.xAxisValueSource).getValue(); boolean isCombo = (xAxisValueSource instanceof ParameterWrapper) && (((ParameterWrapper) xAxisValueSource).getParameter() instanceof ComboParameter); if ((xAxisValueSource == IntensityPlotParameters.rawDataFilesOption) || isCombo) { chart = ChartFactory.createLineChart(title, xAxisLabel, yAxisLabel, dataset, PlotOrientation.VERTICAL, true, true, false);/*from ww w . j a va 2 s. c om*/ CategoryPlot plot = (CategoryPlot) chart.getPlot(); // set renderer StatisticalLineAndShapeRenderer renderer = new StatisticalLineAndShapeRenderer(false, true); renderer.setBaseStroke(new BasicStroke(2)); plot.setRenderer(renderer); plot.setBackgroundPaint(Color.white); // set tooltip generator CategoryToolTipGenerator toolTipGenerator = new IntensityPlotTooltipGenerator(); renderer.setBaseToolTipGenerator(toolTipGenerator); CategoryAxis xAxis = (CategoryAxis) plot.getDomainAxis(); xAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_45); } else { chart = ChartFactory.createXYLineChart(title, xAxisLabel, yAxisLabel, dataset, PlotOrientation.VERTICAL, true, true, false); XYPlot plot = (XYPlot) chart.getPlot(); XYErrorRenderer renderer = new XYErrorRenderer(); renderer.setBaseStroke(new BasicStroke(2)); plot.setRenderer(renderer); plot.setBackgroundPaint(Color.white); // set tooltip generator XYToolTipGenerator toolTipGenerator = new IntensityPlotTooltipGenerator(); renderer.setBaseToolTipGenerator(toolTipGenerator); } chart.setBackgroundPaint(Color.white); // create chart JPanel ChartPanel chartPanel = new ChartPanel(chart); add(chartPanel, BorderLayout.CENTER); IntensityPlotToolBar toolBar = new IntensityPlotToolBar(this); add(toolBar, BorderLayout.EAST); // disable maximum size (we don't want scaling) chartPanel.setMaximumDrawWidth(Integer.MAX_VALUE); chartPanel.setMaximumDrawHeight(Integer.MAX_VALUE); // set title properties TextTitle chartTitle = chart.getTitle(); chartTitle.setMargin(5, 0, 0, 0); chartTitle.setFont(titleFont); LegendTitle legend = chart.getLegend(); legend.setItemFont(legendFont); legend.setBorder(0, 0, 0, 0); Plot plot = chart.getPlot(); // set shape provider IntensityPlotDrawingSupplier shapeSupplier = new IntensityPlotDrawingSupplier(); plot.setDrawingSupplier(shapeSupplier); // set y axis properties NumberAxis yAxis; if (plot instanceof CategoryPlot) yAxis = (NumberAxis) ((CategoryPlot) plot).getRangeAxis(); else yAxis = (NumberAxis) ((XYPlot) plot).getRangeAxis(); NumberFormat yAxisFormat = MZmineCore.getConfiguration().getIntensityFormat(); if (parameters.getParameter(IntensityPlotParameters.yAxisValueSource).getValue() == YAxisValueSource.RT) yAxisFormat = MZmineCore.getConfiguration().getRTFormat(); yAxis.setNumberFormatOverride(yAxisFormat); setTitle(title); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); setBackground(Color.white); pack(); }
From source file:menusearch.ui.MenuGraph.java
/** * Displays a LineChart based on the number of menus by years Data is * according to the menus currently being displayed on MenuResultsPage * * @param evt- When displayLineChart button is clicked *//*from w ww . j a v a2 s .c o m*/ private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed try { MenuResultsPage mp = new MenuResultsPage(); SearchMenusPanel x = new SearchMenusPanel(); SearchParameters p = x.buildSearchParameters(); ArrayList<Menu> search = mp.menuListResults(p); ArrayList<LocalDate> menu_date = null; DefaultCategoryDataset dataset = new DefaultCategoryDataset(); for (int i = 0; i < search.size(); i++) { menu_date.add(search.get(i).getMenu_date()); int year = menu_date.get(i).getYear(); dataset.addValue(year, "Years", "Number of Menus"); } JFreeChart chart = ChartFactory.createLineChart("Number of Menus by Years", "Years", "Number of Menus", dataset, PlotOrientation.VERTICAL, false, true, true); BarRenderer renderer = null; CategoryPlot plot = null; renderer = new BarRenderer(); ChartPanel chPanel = new ChartPanel(chart); chPanel.setVisible(true); chPanel.setPreferredSize(new Dimension(575, 300)); chPanel.setMouseWheelEnabled(true); JPanel jPanel = new JPanel(); jPanel.setLayout(new java.awt.BorderLayout()); jPanel.add(chPanel, BorderLayout.CENTER); jPanel.validate(); } catch (ClassNotFoundException ex) { Logger.getLogger(MenuGraph.class.getName()).log(Level.SEVERE, null, ex); } catch (SQLException ex) { Logger.getLogger(MenuGraph.class.getName()).log(Level.SEVERE, null, ex); } }
From source file:org.matsim.pt.counts.PtBiasErrorGraph.java
@Override public JFreeChart createChart(final int nbr) { DefaultCategoryDataset dataset0 = new DefaultCategoryDataset(); DefaultCategoryDataset dataset1 = new DefaultCategoryDataset(); this.errorStats = new ComparisonErrorStatsCalculator(this.ccl_); double[] meanRelError = errorStats.getMeanRelError(); // double[] meanAbsError = errorStats.getMeanAbsError(); double[] meanAbsBias = errorStats.getMeanAbsBias(); for (int h = 0; h < 24; h++) { dataset0.addValue(meanRelError[h], "Mean rel error", Integer.toString(h + 1)); // dataset1.addValue(meanAbsError[h], "Mean abs error", // Integer.toString(h + 1)); dataset1.addValue(meanAbsBias[h], "Mean abs bias", Integer.toString(h + 1)); }/*from www . j a v a2 s . c o m*/ this.chart_ = ChartFactory.createLineChart(this.chartTitle, "Hour", "Mean rel error [%]", dataset0, PlotOrientation.VERTICAL, true, // legend? true, // tooltips? false // URLs? ); CategoryPlot plot = this.chart_.getCategoryPlot(); plot.setDomainAxisLocation(AxisLocation.BOTTOM_OR_RIGHT); plot.setDataset(1, dataset1); plot.mapDatasetToRangeAxis(1, 1); final LineAndShapeRenderer renderer = new LineAndShapeRenderer(); renderer.setSeriesToolTipGenerator(0, new StandardCategoryToolTipGenerator()); plot.setRenderer(0, renderer); final CategoryAxis axis1 = new CategoryAxis("Hour"); axis1.setTickLabelFont(new Font("SansSerif", Font.PLAIN, 7)); plot.setDomainAxis(axis1); // final ValueAxis axis2 = new // NumberAxis("Mean abs {bias, error} [veh/h]"); final ValueAxis axis2 = new NumberAxis("Mean abs bias [veh/h]"); plot.setRangeAxis(1, axis2); final ValueAxis axis3 = plot.getRangeAxis(0); axis3.setRange(0.0, 100.0); final LineAndShapeRenderer renderer2 = new LineAndShapeRenderer(); renderer2.setSeriesToolTipGenerator(0, new StandardCategoryToolTipGenerator()); renderer2.setSeriesToolTipGenerator(1, new StandardCategoryToolTipGenerator()); // renderer2.setSeriesPaint(0, Color.black); plot.setRenderer(1, renderer2); plot.setDatasetRenderingOrder(DatasetRenderingOrder.REVERSE); return this.chart_; }
From source file:edu.ucla.stat.SOCR.chart.SuperCategoryChart.java
protected JFreeChart createLegend(CategoryDataset dataset) { // JFreeChart chart = ChartFactory.createAreaChart( JFreeChart chart = ChartFactory.createLineChart(chartTitle, // chart title domainLabel, // "Category", // domain axis label rangeLabel, //"Value", // range axis label dataset, // data PlotOrientation.VERTICAL, // orientation true, // include legend true, // tooltips false // urls );//from ww w .j a va2s. co m // NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART... chart.setBackgroundPaint(Color.white); CategoryPlot plot = chart.getCategoryPlot(); LineAndShapeRenderer renderer = (LineAndShapeRenderer) plot.getRenderer(); renderer.setBaseShapesVisible(true); // renderer.setDrawOutlines(true); // renderer.setUseFillPaint(true); // renderer.setFillPaint(Color.white); renderer.setLegendItemLabelGenerator(new SOCRCategorySeriesLabelGenerator()); return chart; }
From source file:org.matsim.pt.counts.obsolete.PtBiasErrorGraph.java
@Override @Deprecated // use standard counts package public JFreeChart createChart(final int nbr) { DefaultCategoryDataset dataset0 = new DefaultCategoryDataset(); DefaultCategoryDataset dataset1 = new DefaultCategoryDataset(); this.errorStats = new ComparisonErrorStatsCalculator(this.ccl_); double[] meanRelError = errorStats.getMeanRelError(); // double[] meanAbsError = errorStats.getMeanAbsError(); double[] meanAbsBias = errorStats.getMeanAbsBias(); for (int h = 0; h < 24; h++) { dataset0.addValue(meanRelError[h], "Mean rel error", Integer.toString(h + 1)); // dataset1.addValue(meanAbsError[h], "Mean abs error", // Integer.toString(h + 1)); dataset1.addValue(meanAbsBias[h], "Mean abs bias", Integer.toString(h + 1)); }//w ww .j a va 2 s. c o m this.chart_ = ChartFactory.createLineChart(this.chartTitle, "Hour", "Mean rel error [%]", dataset0, PlotOrientation.VERTICAL, true, // legend? true, // tooltips? false // URLs? ); CategoryPlot plot = this.chart_.getCategoryPlot(); plot.setDomainAxisLocation(AxisLocation.BOTTOM_OR_RIGHT); plot.setDataset(1, dataset1); plot.mapDatasetToRangeAxis(1, 1); final LineAndShapeRenderer renderer = new LineAndShapeRenderer(); renderer.setSeriesToolTipGenerator(0, new StandardCategoryToolTipGenerator()); plot.setRenderer(0, renderer); final CategoryAxis axis1 = new CategoryAxis("Hour"); axis1.setTickLabelFont(new Font("SansSerif", Font.PLAIN, 7)); plot.setDomainAxis(axis1); // final ValueAxis axis2 = new // NumberAxis("Mean abs {bias, error} [veh/h]"); final ValueAxis axis2 = new NumberAxis("Mean abs bias [veh/h]"); plot.setRangeAxis(1, axis2); final ValueAxis axis3 = plot.getRangeAxis(0); axis3.setRange(0.0, 100.0); final LineAndShapeRenderer renderer2 = new LineAndShapeRenderer(); renderer2.setSeriesToolTipGenerator(0, new StandardCategoryToolTipGenerator()); renderer2.setSeriesToolTipGenerator(1, new StandardCategoryToolTipGenerator()); // renderer2.setSeriesPaint(0, Color.black); plot.setRenderer(1, renderer2); plot.setDatasetRenderingOrder(DatasetRenderingOrder.REVERSE); return this.chart_; }
From source file:biz.ixnay.pivot.charts.skin.jfree.LineChartViewSkin.java
@Override protected JFreeChart createChart() { LineChartView chartView = (LineChartView) getComponent(); String title = chartView.getTitle(); String horizontalAxisLabel = chartView.getHorizontalAxisLabel(); String verticalAxisLabel = chartView.getVerticalAxisLabel(); boolean showLegend = chartView.getShowLegend(); String seriesNameKey = chartView.getSeriesNameKey(); List<?> chartData = chartView.getChartData(); JFreeChart chart;//from w w w .ja v a2s . c o m ChartView.CategorySequence categories = chartView.getCategories(); if (categories.getLength() > 0) { CategorySeriesDataset dataset = new CategorySeriesDataset(categories, seriesNameKey, chartData); if (threeDimensional) { chart = ChartFactory.createLineChart3D(title, horizontalAxisLabel, verticalAxisLabel, dataset, PlotOrientation.VERTICAL, showLegend, false, false); } else { chart = ChartFactory.createLineChart(title, horizontalAxisLabel, verticalAxisLabel, dataset, PlotOrientation.VERTICAL, showLegend, false, false); } CategoryPlot plot = (CategoryPlot) chart.getPlot(); CategoryAxis domainAxis = plot.getDomainAxis(); CategoryLabelPositions categoryLabelPositions = CategoryLabelPositions .createUpRotationLabelPositions(categoryLabelRotation); domainAxis.setCategoryLabelPositions(categoryLabelPositions); if (rangeAxisRange != null) { ValueAxis rangeAxis = plot.getRangeAxis(); rangeAxis.setRange(rangeAxisRange); } } else { chart = ChartFactory.createXYLineChart(title, horizontalAxisLabel, verticalAxisLabel, new XYSeriesDataset(seriesNameKey, chartData), PlotOrientation.VERTICAL, showLegend, false, false); if (rangeAxisRange != null) { XYPlot plot = (XYPlot) chart.getPlot(); ValueAxis rangeAxis = plot.getRangeAxis(); rangeAxis.setRange(rangeAxisRange); } } return chart; }
From source file:org.usip.osp.graphs.GraphServer.java
public static Chart getChartByNameAndRound(String chart_id, String game_round, String sim_id, String values_table) {/*from w ww . jav a2 s . co m*/ Chart cci = new Chart(); String selectChartInfo = "SELECT * FROM `charts` where sf_id = '" //$NON-NLS-1$ + chart_id + "'"; //$NON-NLS-1$ try { Connection connection = MultiSchemaHibernateUtil.getConnection(); Statement stmt = connection.createStatement(); ResultSet rst = stmt.executeQuery(selectChartInfo); if (rst.next()) { String chart_type = rst.getString("type"); //$NON-NLS-1$ String chart_title = rst.getString("title"); //$NON-NLS-1$ String x_axis_title = rst.getString("x_axis_title"); //$NON-NLS-1$ String y_axis_title = rst.getString("y_axis_title"); //$NON-NLS-1$ //cci.height = rst.getInt("height"); //cci.width = rst.getInt("width"); String howToGetData = rst.getString("first_data_source"); //$NON-NLS-1$ howToGetData = howToGetData.replace("[simulation_id]", sim_id); //$NON-NLS-1$ howToGetData = howToGetData.replace("[sim_value_table_name]", values_table); //$NON-NLS-1$ Statement stmt2 = connection.createStatement(); ResultSet rst2 = stmt.executeQuery(howToGetData); JFreeChart chart = null; if (chart_type.equalsIgnoreCase("LineChart")) { //$NON-NLS-1$ DefaultCategoryDataset cd = DataGatherer.getChartData(chart_type, game_round, howToGetData); chart = ChartFactory.createLineChart(chart_title, // chart // title x_axis_title, // domain axis label y_axis_title, // range axis label cd, // data PlotOrientation.VERTICAL, // orientation false, // include legend true, // tooltips false // urls ); } else if (chart_type.equalsIgnoreCase("BarChart")) { //$NON-NLS-1$ DefaultPieDataset dataset = DataGatherer.getPieData(chart_id, game_round, howToGetData); chart = ChartFactory.createPieChart(chart_title, dataset, true, // legend? true, // tooltips? false // URLs? ); } cci.setThis_chart(chart); } // End of loop if found chart info connection.close(); } catch (Exception e) { e.printStackTrace(); } return cci; }