List of usage examples for org.jfree.chart ChartFactory createBarChart3D
public static JFreeChart createBarChart3D(String title, String categoryAxisLabel, String valueAxisLabel, CategoryDataset dataset, PlotOrientation orientation, boolean legend, boolean tooltips, boolean urls)
From source file:j2se.jfreechart.barchart.BarChart3DDemo2.java
/** * Creates a chart./*ww w .ja va 2s . c o m*/ * * @param dataset the dataset. * * @return The chart. */ private JFreeChart createChart(final CategoryDataset dataset) { final JFreeChart chart = ChartFactory.createBarChart3D("3D Bar Chart Demo 2", // chart title "Category", // domain axis label "Value", // range axis label dataset, // data PlotOrientation.HORIZONTAL, // orientation true, // include legend true, // tooltips false // urls ); final CategoryPlot plot = chart.getCategoryPlot(); plot.setForegroundAlpha(1.0f); // left align the category labels... final CategoryAxis axis = plot.getDomainAxis(); final CategoryLabelPositions p = axis.getCategoryLabelPositions(); final CategoryLabelPosition left = new CategoryLabelPosition(RectangleAnchor.LEFT, TextBlockAnchor.CENTER_LEFT, TextAnchor.CENTER_LEFT, 0.0, CategoryLabelWidthType.RANGE, 0.30f); axis.setCategoryLabelPositions(CategoryLabelPositions.replaceLeftPosition(p, left)); return chart; }
From source file:Visao.Relatorio.Relatorio_QuantidadeReclamacoesUF.java
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed dataset = controleRelatorio.numeroReclamacoesEstadoGrafico(); chart = ChartFactory.createBarChart3D("Quantidade de Reclamaes por Estado", "Estado", "Quantidade", dataset, PlotOrientation.HORIZONTAL, true, true, true); chart.setBackgroundPaint(Color.WHITE); Grafico_QuantidadeReclamacoesUF dialog = null; dialog = new Grafico_QuantidadeReclamacoesUF(parent, true, dao, chart); dialog.setLocationRelativeTo(null);//from www . j av a 2 s . co m dialog.setVisible(true); jButton2.setEnabled(true); }
From source file:fuel.gui.stats.StationStatsPanel.java
private void refreshGraphs() { graphContainer.removeAll();//from w ww. j a v a 2 s . co m DefaultPieDataset usageDataset = new DefaultPieDataset(); try { for (Station station : database.getStations()) { ResultSet thisStation = database .Query("SELECT SUM(liter) FROM fuelrecords WHERE stationId = " + station.getId(), true); thisStation.next(); usageDataset.setValue(station.toString(), thisStation.getInt("1")); } } catch (SQLException ex) { JOptionPane.showMessageDialog(null, ex.getMessage() + ex.getCause()); } JFreeChart usagePieChart = ChartFactory.createPieChart3D("", usageDataset, true, true, false); PiePlot3D plot3 = (PiePlot3D) usagePieChart.getPlot(); plot3.setForegroundAlpha(0.6f); //plot3.setCircular(true); JPanel usagePieChartPanel = new ChartPanel(usagePieChart); usagePieChartPanel.setBorder( BorderFactory.createTitledBorder(BorderFactory.createTitledBorder("Tankstation verhouding"))); usagePieChartPanel.setPreferredSize(new java.awt.Dimension(320, 240)); DefaultPieDataset fuelDataset = new DefaultPieDataset(); try { ResultSet numberResults = database.Query("SELECT DISTINCT typeOfGas FROM fuelrecords", true); while (numberResults.next()) { ResultSet thisStation = database.Query("SELECT SUM(liter) FROM fuelrecords WHERE typeOfGas = '" + numberResults.getString("typeOfGas") + "'", true); thisStation.next(); fuelDataset.setValue(numberResults.getString("typeOfGas"), thisStation.getInt("1")); } } catch (SQLException ex) { JOptionPane.showMessageDialog(null, ex.getMessage() + ex.getCause()); } JFreeChart fuelPieChart = ChartFactory.createPieChart3D("", fuelDataset, true, true, false); PiePlot3D plot2 = (PiePlot3D) fuelPieChart.getPlot(); plot2.setForegroundAlpha(0.6f); //plot3.setCircular(true); JPanel fuelPieChartPanel = new ChartPanel(fuelPieChart); fuelPieChartPanel.setBorder( BorderFactory.createTitledBorder(BorderFactory.createTitledBorder("Brandstof verhouding"))); fuelPieChartPanel.setPreferredSize(new java.awt.Dimension(320, 240)); DefaultCategoryDataset barDataset = new DefaultCategoryDataset(); try { ResultSet motorThing = database.Query("SELECT cost/liter,date FROM fuelrecords ORDER BY date ASC", true); while (motorThing.next()) { barDataset.addValue(motorThing.getDouble("1"), motorThing.getString("date"), "Prijs per liter"); } } catch (SQLException ex) { JOptionPane.showMessageDialog(null, ex.getMessage() + ex.getCause()); } JFreeChart barChart = ChartFactory.createBarChart3D("", // chart title "", // domain axis label "Aantal", // range axis label barDataset, // data PlotOrientation.VERTICAL, false, // include legend true, // tooltips? false // URLs? ); CategoryPlot plot = barChart.getCategoryPlot(); BarRenderer3D renderer = (BarRenderer3D) plot.getRenderer(); renderer.setDrawBarOutline(false); ChartPanel barChartPanel = new ChartPanel(barChart); barChartPanel.getChartRenderingInfo().setEntityCollection(null); barChartPanel.setBorder(BorderFactory.createTitledBorder("Prijs per liter")); barChartPanel.setPreferredSize(new java.awt.Dimension(320, 240)); JPanel piePanel = new JPanel(new GridLayout(0, 2)); piePanel.add(usagePieChartPanel); piePanel.add(fuelPieChartPanel); graphContainer.add(piePanel); graphContainer.add(barChartPanel); revalidate(); repaint(); }
From source file:org.inbio.ait.web.controller.StatisticalController.java
/** * Gets the chart parameters, build the chart based on those parameters. * Then, the chart is passed as atribute trhow the session to another * view and finally the chart is shown to the user. * @throws java.lang.Exception/*ww w . ja v a 2 s . c om*/ */ @Override protected ModelAndView onSubmit(HttpServletRequest request, HttpServletResponse response, Object command, BindException errors) throws Exception { //Getting query parameters ChartParameters parameters = (ChartParameters) command; //Arrays that contains the parameters data String[] xArray, yArray, xToShow, yToShow; //Validate if the user don't specify the x and y criteria if (parameters.getXdata().equals("") || parameters.getYdata().equals("")) { xArray = new String[0]; yArray = new String[0]; xToShow = new String[0]; yToShow = new String[0]; } else { xArray = parameters.getXdata().split("\\|"); yArray = parameters.getYdata().split("\\|"); xToShow = parameters.getXdatatoshow().split("\\|"); yToShow = parameters.getYdatatoshow().split("\\|"); } //Create the data set (value,row,colum) = (value,y,x) DefaultCategoryDataset dataset = new DefaultCategoryDataset(); //Getting x and y axis int values int x = 0, y = 0; try { x = Integer.parseInt(parameters.getXaxis()); y = Integer.parseInt(parameters.getYaxis()); } catch (Exception e) { } //Getting chart data from data base for (int i = 0; i < xArray.length; i++) { for (int j = 0; j < yArray.length; j++) { Long result = getQueryManager().countByCriteria(xArray[i], yArray[j], x, y); dataset.addValue(result, yToShow[j], xToShow[i]); //(value,y,x) } } //Create the chart JFreeChart chart; if (parameters.getType().equals(ChartType.BAR_CHART.getType())) { chart = ChartFactory.createBarChart3D(parameters.getTitle(), //title parameters.getXtitle(), // x axis label parameters.getYtitle(), // y axis label dataset, //dataset PlotOrientation.VERTICAL, true, // include legend true, // tooltips false); // urls } else { chart = ChartFactory.createLineChart3D(parameters.getTitle(), //title parameters.getXtitle(), // x axis label parameters.getYtitle(), // y axis label dataset, //dataset PlotOrientation.VERTICAL, true, // include legend true, // tooltips false); // urls } //Customize the chart chart.setBackgroundPaint(Color.WHITE); //Store te chart in the session. request.getSession(true).setAttribute("chart", chart); //Show the resultant chart boolean chartDisplay = true; ModelAndView mv = new ModelAndView(getSuccessView()); //Chart mv.addObject("chartDisplay", chartDisplay); //ChartParameters atributes mv.addObject("xdata", parameters.getXdata()); mv.addObject("ydata", parameters.getYdata()); mv.addObject("xaxis", parameters.getXaxis()); mv.addObject("yaxis", parameters.getYaxis()); mv.addObject("xdatatoshow", parameters.getXdatatoshow()); mv.addObject("ydatatoshow", parameters.getYdatatoshow()); mv.addObject("isgeo", parameters.getIsgeo()); mv.addObject("ldata", parameters.getLdata()); mv.addObject("ldatatoshow", parameters.getLdatatoshow()); return mv; }
From source file:erpsystem.chart.Charts.java
/** Grfico criado para mostrar o histrico de * faturamento periodicamente considerando o valor bruto * em R$ de lucro./*from www.j ava 2 s. c o m*/ */ public static BufferedImage create002(int w, int h, Calendar initialCalendar, int interval) { //Inicio DefaultCategoryDataset ds = new DefaultCategoryDataset(); String LUCRO = "Lucro R$"; //Configurando os Calendars. Calendar finalCalendar = getCurrentCalendar(); Calendar finalValue = copyCalendar(initialCalendar); Calendar initialValue = copyCalendar(initialCalendar); while (finalCalendar.after(finalValue)) { //ajustando os Calendars ponteiros. initialValue = copyCalendar(finalValue); finalValue.add(Calendar.DAY_OF_MONTH, interval); //toString para depurao. String s1 = toString(initialValue); String s2 = toString(finalValue); //Obtendo as datas como raw para //possibilitar comparao com o banco de dados. long value1 = initialValue.getTimeInMillis(); long value2 = finalValue.getTimeInMillis(); //Obtendo a nova abstrao de lucro com os intervalos especificados. double lucro = Chart001.getValorLucroEm(value1, value2); double venda = Chart001.getValorVendaEm(value1, value2); double compra = Chart001.getValorCompraEm(value1, value2); //Adicionando a nova abstrao na coleo de dados do grfico. int y = initialValue.get(Calendar.YEAR); int m = initialValue.get(Calendar.MONTH) + 1; int d = initialValue.get(Calendar.DAY_OF_MONTH); String identifier = d + "/" + m + "/" + y; ds.addValue(lucro, "Lucro", identifier); ds.addValue(venda, "Venda", identifier); ds.addValue(compra, "Compra", identifier); } //Criando o grfico abstrato em 3D. JFreeChart chart = ChartFactory.createBarChart3D("Faturamento", "Faturamento", "Valor R$", ds, PlotOrientation.VERTICAL, true, true, false); //Criando e retornando a imagem como //mapa de pixels do grfico. return chart.createBufferedImage(w, h); }
From source file:msi.gama.outputs.layers.charts.ChartJFreeChartOutputHistogram.java
@Override public void createChart(final IScope scope) { super.createChart(scope); jfreedataset.add(0, new DefaultCategoryDataset()); PlotOrientation orientation = PlotOrientation.VERTICAL; if (reverse_axes) { orientation = PlotOrientation.HORIZONTAL; }/* w w w . j av a2 s. co m*/ if (style.equals(IKeyword.THREE_D)) { chart = ChartFactory.createBarChart3D(getName(), null, null, null, orientation, true, true, false); } else if (style.equals(IKeyword.STACK)) { chart = ChartFactory.createStackedBarChart(getName(), null, null, null, orientation, true, true, false); } else { chart = ChartFactory.createBarChart(getName(), null, null, null, orientation, true, true, false); } }
From source file:reports.util.BarChartScriptlet.java
/** * *//*from w w w . ja va 2 s .c o m*/ public void afterReportInit() throws JRScriptletException { JFreeChart jfreechart = ChartFactory.createBarChart3D("Bar Chart Demo", // chart title "States", // X Label "Sell Amount", // Y Label dataset, // data PlotOrientation.VERTICAL, // orientation true, // include legend true, // tooltips? false // URLs? ); CategoryPlot categoryplot = jfreechart.getCategoryPlot(); CategoryAxis categoryaxis = categoryplot.getDomainAxis(); categoryaxis.setCategoryLabelPositions( CategoryLabelPositions.createUpRotationLabelPositions(0.39269908169872414D)); LegendTitle legendtitle = (LegendTitle) jfreechart.getSubtitle(0); legendtitle.setPosition(RectangleEdge.RIGHT); legendtitle.setMargin(new RectangleInsets(UnitType.ABSOLUTE, 0.0D, 4D, 0.0D, 4D)); IntervalMarker intervalmarker = new IntervalMarker(4000D, 5000D); intervalmarker.setLabel("Target Range"); intervalmarker.setLabelFont(new Font("SansSerif", 2, 11)); intervalmarker.setLabelAnchor(RectangleAnchor.LEFT); intervalmarker.setLabelTextAnchor(TextAnchor.CENTER_LEFT); intervalmarker.setPaint(new Color(222, 222, 255, 128)); categoryplot.addRangeMarker(intervalmarker, Layer.BACKGROUND); CategoryItemRenderer categoryitemrenderer = categoryplot.getRenderer(); categoryitemrenderer.setItemLabelsVisible(true); BarRenderer barrenderer = (BarRenderer) categoryitemrenderer; barrenderer.setMaxBarWidth(0.050000000000000003D); barrenderer.setItemLabelGenerator(new LabelGenerator()); barrenderer.setItemLabelsVisible(true); ItemLabelPosition itemlabelposition1 = new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12, TextAnchor.CENTER_LEFT, TextAnchor.CENTER_LEFT, -1.5707963267948966D); barrenderer.setPositiveItemLabelPositionFallback(itemlabelposition1); categoryaxis.setCategoryLabelPositions(CategoryLabelPositions.UP_90); /* jfreechart.setBackgroundPaint(Color.white); CategoryPlot categoryplot = jfreechart.getCategoryPlot(); categoryplot.setBackgroundPaint(Color.lightGray); categoryplot.setDomainGridlinePaint(Color.white); categoryplot.setDomainGridlinesVisible(true); categoryplot.setRangeGridlinePaint(Color.white); NumberAxis numberaxis = (NumberAxis)categoryplot.getRangeAxis(); numberaxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); BarRenderer barrenderer = (BarRenderer)categoryplot.getRenderer(); barrenderer.setDrawBarOutline(false); GradientPaint gradientpaint = new GradientPaint(0.0F, 0.0F, Color.blue, 0.0F, 0.0F, new Color(0, 0, 64)); GradientPaint gradientpaint1 = new GradientPaint(0.0F, 0.0F, Color.green, 0.0F, 0.0F, new Color(0, 64, 0)); GradientPaint gradientpaint2 = new GradientPaint(0.0F, 0.0F, Color.red, 0.0F, 0.0F, new Color(64, 0, 0)); barrenderer.setSeriesPaint(0, gradientpaint); barrenderer.setSeriesPaint(1, gradientpaint1); barrenderer.setSeriesPaint(2, gradientpaint2); CategoryAxis categoryaxis = categoryplot.getDomainAxis(); categoryaxis.setCategoryLabelPositions(CategoryLabelPositions.createUpRotationLabelPositions(0.52359877559829882D)); */ this.setVariableValue("Chart", new JCommonDrawableRenderer(jfreechart)); }
From source file:Visao.grafico.GraficoRelatorioEstoque.java
public void criaGrafico() { CategoryDataset cds = createDataset(); String titulo = "Grfico de " + ControlePrincipal.tipo_grafico; String eixoy = "Valores"; String txt_legenda = "Ledenda:"; boolean legenda = true; boolean tooltips = true; boolean urls = true; JFreeChart graf = ChartFactory.createBarChart3D(titulo, txt_legenda, eixoy, cds, PlotOrientation.VERTICAL, legenda, tooltips, urls);// w w w . j av a2s. com ChartPanel myChartPanel = new ChartPanel(graf, true); myChartPanel.setSize(jPaneGraficoRE.getWidth(), jPaneGraficoRE.getHeight()); myChartPanel.setVisible(true); jPaneGraficoRE.removeAll(); jPaneGraficoRE.add(myChartPanel); jPaneGraficoRE.revalidate(); jPaneGraficoRE.repaint(); }
From source file:com.sun.portal.os.portlets.ChartServlet.java
private JFreeChart createChart(HttpServletRequest request) { JFreeChart chart = null;//from ww w. j a v a 2s .com try { HttpSession session = request.getSession(true); PortletPreferences prefs = (PortletPreferences) session.getAttribute("PORTLET_PREFERENCES"); if (prefs == null) throw new NoPreferredDbSetException("Preferences not passed in from portlet"); String type = prefs.getValue(Constants.PREF_CHART_TYPE, PIE_CHART); debugMessage("Chart type :" + type); if (type.equals(PIE_CHART)) { String sql = prefs.getValue(Constants.PREF_PIE_CHART_SQL, DEFAULT_PIE_CHART_SQL); PieDataset data = (PieDataset) generatePieDataSet(getDatabaseConnection(request), sql); chart = ChartFactory.createPieChart("Pie Chart", data, true, true, false); } else if (type.equals(BAR_CHART)) { String sql = prefs.getValue(Constants.PREF_BAR_CHART_SQL, DEFAULT_BAR_CHART_SQL); JDBCCategoryDataset data = (JDBCCategoryDataset) generateBarChartDataSet( getDatabaseConnection(request), sql); chart = ChartFactory.createBarChart3D("Bar Chart", "Category", "Value", data, PlotOrientation.VERTICAL, true, true, false); } else if (type.equals(TIME_CHART)) { String sql = prefs.getValue(Constants.PREF_TIME_SERIES_SQL, DEFAULT_TIME_SERIES_SQL); JDBCXYDataset data = (JDBCXYDataset) generateXYDataSet(getDatabaseConnection(request), sql); chart = ChartFactory.createTimeSeriesChart("Time Series Chart", "Date", "Rate", data, true, true, false); } } catch (NoPreferredDbSetException npdbs) { npdbs.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } return chart; }
From source file:org.squale.squaleweb.util.graph.RepartitionMaker.java
/** * @return le diagramme JFreeChart//from w w w . ja v a 2 s .co m */ public JFreeChart getChart() { JFreeChart retChart = super.getChart(); if (null == retChart) { retChart = ChartFactory.createBarChart3D(mTitle, mXLabel, mYLabel, mDataSet, PlotOrientation.VERTICAL, false, true, true); CategoryPlot plot = retChart.getCategoryPlot(); CategoryAxis xAxis = plot.getDomainAxis(); xAxis.setAxisLineVisible(true); xAxis.setVisible(true); ValueAxis yAxis = plot.getRangeAxis(); yAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); // On rajoute 5% pour avoir une meilleure lisibilit final double YAxisCoeff = 1.05; yAxis.setRange(PracticeResultBO.REFUSED_MIN, Math.max(mMaxValue * YAxisCoeff, 1)); // Positionne les couleurs et les liens mRenderer = (CategoryItemRenderer) plot.getRenderer(); RepartitionUrlGenerator generator = new RepartitionUrlGenerator(mProjectId, mCurrentAuditId, mPreviousAuditId, mPracticeId, mFactorParentId, NB_SERIES_FOR_FLOAT_GRAPH); mRenderer.setItemURLGenerator(generator); BarRenderer barRenderer = (BarRenderer) mRenderer; barRenderer.setBaseSeriesVisible(true); RepartitionToolTipGenerator toolTipGenerator = new RepartitionToolTipGenerator(); barRenderer.setToolTipGenerator(toolTipGenerator); manageColor(NB_SERIES_FOR_FLOAT_GRAPH); retChart.setBackgroundPaint(Color.WHITE); super.setChart(retChart); } return retChart; }