List of usage examples for org.jfree.chart ChartUtilities applyCurrentTheme
public static void applyCurrentTheme(JFreeChart chart)
From source file:com.orsonpdf.demo.PDFBarChartDemo1.java
/** * Creates a sample chart./*from w w w . ja v a 2 s .co m*/ * * @param dataset a dataset. * * @return The chart. */ private static JFreeChart createChart(CategoryDataset dataset) { // create the chart... JFreeChart chart = ChartFactory.createLineChart("Statistical Bar Chart Demo 1", "Type", "Value", dataset, PlotOrientation.VERTICAL, true, false, false); CategoryPlot plot = (CategoryPlot) chart.getPlot(); // customise the range axis... NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis(); rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); rangeAxis.setAutoRangeIncludesZero(false); // customise the renderer... StatisticalBarRenderer renderer = new StatisticalBarRenderer(); renderer.setDrawBarOutline(false); renderer.setErrorIndicatorPaint(Color.black); renderer.setIncludeBaseInRange(false); plot.setRenderer(renderer); // ensure the current theme is applied to the renderer just added ChartUtilities.applyCurrentTheme(chart); renderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator()); renderer.setBaseItemLabelsVisible(true); renderer.setBaseItemLabelPaint(Color.yellow); renderer.setBasePositiveItemLabelPosition( new ItemLabelPosition(ItemLabelAnchor.INSIDE6, TextAnchor.BOTTOM_CENTER)); // set up gradient paints for series... GradientPaint gp0 = new GradientPaint(0.0f, 0.0f, Color.blue, 0.0f, 0.0f, new Color(0, 0, 64)); GradientPaint gp1 = new GradientPaint(0.0f, 0.0f, Color.green, 0.0f, 0.0f, new Color(0, 64, 0)); renderer.setSeriesPaint(0, gp0); renderer.setSeriesPaint(1, gp1); return chart; }
From source file:org.jfree.graphics2d.demo.CanvasBarChartDemo1.java
/** * Creates a sample chart./*w w w . j av a 2 s. c om*/ * * @param dataset a dataset. * * @return The chart. */ private static JFreeChart createChart(CategoryDataset dataset) { // create the chart... JFreeChart chart = ChartFactory.createLineChart("Statistical Bar Chart Demo 1", // chart title "Type", // domain axis label "Value", // range axis label dataset); CategoryPlot plot = (CategoryPlot) chart.getPlot(); // customise the range axis... NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis(); rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); rangeAxis.setAutoRangeIncludesZero(false); // customise the renderer... StatisticalBarRenderer renderer = new StatisticalBarRenderer(); renderer.setDrawBarOutline(false); renderer.setErrorIndicatorPaint(Color.black); renderer.setIncludeBaseInRange(false); plot.setRenderer(renderer); // ensure the current theme is applied to the renderer just added ChartUtilities.applyCurrentTheme(chart); renderer.setDefaultItemLabelGenerator(new StandardCategoryItemLabelGenerator()); renderer.setDefaultItemLabelsVisible(true); renderer.setDefaultItemLabelPaint(Color.yellow); renderer.setDefaultPositiveItemLabelPosition( new ItemLabelPosition(ItemLabelAnchor.INSIDE6, TextAnchor.BOTTOM_CENTER)); // set up gradient paints for series... GradientPaint gp0 = new GradientPaint(0.0f, 0.0f, Color.blue, 0.0f, 0.0f, new Color(0, 0, 64)); GradientPaint gp1 = new GradientPaint(0.0f, 0.0f, Color.green, 0.0f, 0.0f, new Color(0, 64, 0)); renderer.setSeriesPaint(0, gp0); renderer.setSeriesPaint(1, gp1); return chart; }
From source file:org.jfree.expdemo.SelectionDemo7ScatterRenderer.java
/** * Creates a chart./*from w w w . j a v a 2 s.co m*/ * * @param dataset * the dataset. * * @return A chart. */ private static JFreeChart createChart(final MultiValueCategoryDataset dataset, final DatasetSelectionExtension ext) { ScatterRenderer r = new ScatterRenderer(); CategoryPlot plot = new CategoryPlot(dataset, new CategoryAxis("Category"), new NumberAxis("Value"), r); plot.setBackgroundPaint(Color.lightGray); plot.setDomainGridlinePaint(Color.white); plot.setRangeGridlinePaint(Color.white); plot.setAxisOffset(new RectangleInsets(4, 4, 4, 4)); JFreeChart chart = new JFreeChart("ScatterRendererDemo1", plot); ChartUtilities.applyCurrentTheme(chart); //register the plot ext.addSelectionChangeListener(plot); //illustrates the usage of a shape item rendering strategy final CategoryCursor cursor = new CategoryCursor(); r.setShapeIRS(new DefaultShapeIRS(r) { public Shape getItemShape(int row, int column) { cursor.setPosition(dataset.getRowKey(row), dataset.getColumnKey(column)); if (ext.isSelected(cursor)) { return new Rectangle2D.Double(-10.0, -10.0, 20.0, 20.0); } else { return super.getItemShape(row, column); } } }); return chart; }
From source file:eu.delving.sip.base.ReportChartHelper.java
private static JPanel finishBarChart(JFreeChart chart, Color... colors) { CategoryPlot plot = (CategoryPlot) chart.getPlot(); plot.setRangeAxisLocation(AxisLocation.BOTTOM_OR_LEFT); plot.setRangePannable(true);//from w ww . ja v a 2s .c o m if (colors.length > 0) plot.setRenderer(new CustomRenderer(colors)); BarRenderer bar = (BarRenderer) plot.getRenderer(); bar.setItemLabelAnchorOffset(9D); bar.setBaseItemLabelsVisible(true); bar.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator()); bar.setMaximumBarWidth(0.05); bar.setItemMargin(0.03D); bar.setBasePositiveItemLabelPosition( new ItemLabelPosition(INSIDE12, CENTER_RIGHT, CENTER_RIGHT, -1.5707963267948966D)); bar.setPositiveItemLabelPositionFallback( new ItemLabelPosition(OUTSIDE12, CENTER_LEFT, CENTER_LEFT, -1.5707963267948966D)); CategoryAxis x = plot.getDomainAxis(); x.setCategoryLabelPositions(CategoryLabelPositions.DOWN_90); x.setCategoryMargin(0.25D); x.setUpperMargin(0.02D); x.setLowerMargin(0.02D); NumberAxis y = (NumberAxis) plot.getRangeAxis(); y.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); y.setUpperMargin(0.10000000000000001D); ChartUtilities.applyCurrentTheme(chart); return new ChartPanel(chart); }
From source file:net.nosleep.superanalyzer.analysis.views.LikesView.java
private void createChart() { _chart = ChartFactory.createScatterPlot(Misc.getString("LIKES_VS_PLAYS"), Misc.getString("ALBUM_PLAY_COUNT"), Misc.getString("ALBUM_RATING"), _dataset, PlotOrientation.VERTICAL, false, true, false); _chart.addSubtitle(HomePanel.createSubtitle(Misc.getString("LIKES_VS_PLAYS_SUBTITLE"))); XYPlot plot = (XYPlot) _chart.getPlot(); ChartUtilities.applyCurrentTheme(_chart); plot.setDomainPannable(true);/*from ww w. j a va 2s. co m*/ plot.setRangePannable(true); plot.setDomainZeroBaselineVisible(true); plot.setRangeZeroBaselineVisible(true); plot.setDomainGridlinesVisible(false); plot.setRangeGridlinesVisible(false); // get rid of the little line above/next to the axis plot.setDomainZeroBaselinePaint(Color.white); plot.setRangeZeroBaselinePaint(Color.white); /* * NumberAxis domainAxis = (NumberAxis) plot.getDomainAxis(); * domainAxis.setAutoRangeIncludesZero(false); * * domainAxis.setTickMarkInsideLength(2.0f); * domainAxis.setTickMarkOutsideLength(2.0f); * * domainAxis.setMinorTickCount(2); * domainAxis.setMinorTickMarksVisible(true); */ NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis(); /* * rangeAxis.setTickMarkInsideLength(2.0f); * rangeAxis.setTickMarkOutsideLength(2.0f); * rangeAxis.setMinorTickCount(2); * rangeAxis.setMinorTickMarksVisible(true); */ rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); NumberAxis domainAxis = (NumberAxis) plot.getDomainAxis(); domainAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); // format the line renderer after applying the theme XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) plot.getRenderer(); renderer.setBaseShapesVisible(true); renderer.setDrawOutlines(true); renderer.setUseFillPaint(true); renderer.setBaseFillPaint(Color.white); renderer.setSeriesStroke(0, new BasicStroke(3.0f)); renderer.setSeriesOutlineStroke(0, new BasicStroke(2.0f)); renderer.setSeriesShape(0, new Ellipse2D.Double(-4.0, -4.0, 8.0, 8.0)); Misc.formatChart(plot); renderer.setSeriesPaint(0, Theme.getColorSet()[1]); }
From source file:org.jfree.chart.demo.selection.SelectionDemo7ScatterRenderer.java
/** * Creates a chart.//from ww w .j a v a 2 s . c o m * * @param dataset the dataset. * * @return A chart. */ private static JFreeChart createChart(final MultiValueCategoryDataset dataset, final DatasetSelectionExtension<CategoryCursor<String, String>> ext) { ScatterRenderer r = new ScatterRenderer(); CategoryPlot plot = new CategoryPlot(dataset, new CategoryAxis("Category"), new NumberAxis("Value"), r); plot.setBackgroundColor(Color.LIGHT_GRAY); plot.setDomainGridlinePaint(Color.white); plot.setRangeGridlinePaint(Color.white); plot.setAxisOffset(new RectangleInsets(4, 4, 4, 4)); JFreeChart chart = new JFreeChart("ScatterRendererDemo1", plot); ChartUtilities.applyCurrentTheme(chart); //register the plot ext.addChangeListener(plot); //illustrates the usage of a shape item rendering strategy final CategoryCursor<String, String> cursor = new CategoryCursor<String, String>(); r.setShapeIRS(new DefaultShapeIRS(r) { private static final long serialVersionUID = 1L; @Override public Shape getItemShape(int row, int column) { cursor.setPosition((String) dataset.getRowKey(row), (String) dataset.getColumnKey(column)); if (ext.isSelected(cursor)) { return new Rectangle2D.Double(-10.0, -10.0, 20.0, 20.0); } else { return super.getItemShape(row, column); } } }); return chart; }
From source file:historyView.HistoryJFrame.java
/** * Creates new form HistoryJFrame// w w w .j a v a2 s. co m */ public HistoryJFrame() { initComponents(); //set window in the center of the screen //Get the size of the screen Dimension dim = Toolkit.getDefaultToolkit().getScreenSize(); //Determine the new location of the window int w = this.getSize().width; int h = this.getSize().height; int x = (dim.width - w) / 2; int y = (dim.height - h) / 2; //Move the window this.setLocation(x, y); XYSeries breathingSeries = new XYSeries("Breathing Rate"); XYSeries oxygenSeries = new XYSeries("Oxygen"); XYSeries temperatureSeries = new XYSeries("Temperature"); XYSeries bloodPressureSeries = new XYSeries("Blood Pressure"); XYSeries heartRateSeries = new XYSeries("Heart Rate"); // add date to all the series for (Map.Entry<String, PatientData> entry : model.getSelectedPatient().data.entrySet()) { breathingSeries.add(Double.parseDouble(entry.getKey()), entry.getValue().getBreathing()); oxygenSeries.add(Double.parseDouble(entry.getKey()), entry.getValue().getOxygen()); temperatureSeries.add(Double.parseDouble(entry.getKey()), entry.getValue().getTemperature()); bloodPressureSeries.add(Double.parseDouble(entry.getKey()), entry.getValue().getBloodPressure()); heartRateSeries.add(Double.parseDouble(entry.getKey()), entry.getValue().getHeartRate()); } // Add the series to your data set XYSeriesCollection dataset = new XYSeriesCollection(); dataset.addSeries(breathingSeries); dataset.addSeries(oxygenSeries); dataset.addSeries(temperatureSeries); dataset.addSeries(bloodPressureSeries); dataset.addSeries(heartRateSeries); // Generate the graph JFreeChart chart = ChartFactory.createXYLineChart("XY Chart", // Title "time(s)", // x-axis Label "Rate", // y-axis Label dataset, // Dataset PlotOrientation.VERTICAL, // Plot Orientation true, // Show Legend true, // Use tooltips false // Configure chart to generate URLs? ); this.setLayout(new java.awt.BorderLayout()); ChartPanel CP = new ChartPanel(chart); chart.getPlot().setBackgroundAlpha(1); chart.getPlot().setBackgroundPaint(Color.BLUE); HistoryButtonsJPanel buttonPanel = new HistoryButtonsJPanel(); ChartUtilities.applyCurrentTheme(chart); this.add(CP, BorderLayout.CENTER); this.add(buttonPanel, BorderLayout.PAGE_END); this.validate(); }
From source file:org.jfree.chart.demo.YieldCurveDemo1.java
private static JFreeChart createChart(XYDataset xydataset) { JFreeChart jfreechart = ChartFactory.createTimeSeriesChart("US$ Treasury Yields", "Date", "Yield", xydataset, false, true, false); XYPlot xyplot = (XYPlot) jfreechart.getPlot(); GregorianCalendar gregoriancalendar = new GregorianCalendar(2005, 10, 15); xyplot.setDomainAxis(new CustomDateAxis("Date", gregoriancalendar.getTime())); xyplot.setDomainCrosshairVisible(true); xyplot.setRangeCrosshairVisible(true); org.jfree.chart.renderer.xy.XYItemRenderer xyitemrenderer = xyplot.getRenderer(); if (xyitemrenderer instanceof XYLineAndShapeRenderer) { XYLineAndShapeRenderer xylineandshaperenderer = (XYLineAndShapeRenderer) xyitemrenderer; xylineandshaperenderer.setBaseShapesVisible(true); xylineandshaperenderer.setBaseShapesFilled(true); }/*from w w w . j a v a2 s . c om*/ DateAxis dateaxis = (DateAxis) xyplot.getDomainAxis(); dateaxis.setDateFormatOverride(new SimpleDateFormat("MMM-yyyy")); jfreechart.addSubtitle(new TextTitle("November 2005")); TextTitle texttitle = new TextTitle("Source: http://www.econstats.com/r/r_am1.htm"); texttitle.setFont(new Font("Dialog", 0, 9)); texttitle.setPosition(RectangleEdge.BOTTOM); texttitle.setHorizontalAlignment(HorizontalAlignment.RIGHT); jfreechart.addSubtitle(texttitle); ChartUtilities.applyCurrentTheme(jfreechart); return jfreechart; }
From source file:net.nosleep.superanalyzer.analysis.views.WordView.java
public void createChart() { _chart = ChartFactory.createBarChart3D(Misc.getString("SONG_WORDS"), // chart title Misc.getString("WORD"), // domain axis label Misc.getString("SONG_COUNT"), // range axis label _dataset, // data PlotOrientation.HORIZONTAL, // orientation false, // include legend true, // tooltips? false // URLs? );/*w w w . j a va 2 s . c o m*/ _chart.addSubtitle(HomePanel.createSubtitle(Misc.getString("SONG_WORDS_TOOLTIP"))); CategoryPlot plot = (CategoryPlot) _chart.getPlot(); plot.setRangeAxisLocation(AxisLocation.BOTTOM_OR_LEFT); plot.getRangeAxis().setStandardTickUnits(NumberAxis.createIntegerTickUnits()); ChartUtilities.applyCurrentTheme(_chart); Misc.formatChart(plot); CategoryItemRenderer renderer = plot.getRenderer(); BarRenderer3D barRenderer = (BarRenderer3D) renderer; barRenderer.setWallPaint(Color.white); barRenderer.setSeriesPaint(0, Theme.getColorSet()[1]); }
From source file:org.jfree.chart.demo.DualAxisDemo6.java
private static JFreeChart createChart(CategoryDataset categorydataset, CategoryDataset categorydataset1) { CategoryAxis categoryaxis = new CategoryAxis("Category"); NumberAxis numberaxis = new NumberAxis("Value"); GroupedStackedBarRenderer groupedstackedbarrenderer = new GroupedStackedBarRenderer(); KeyToGroupMap keytogroupmap = new KeyToGroupMap("G1"); keytogroupmap.mapKeyToGroup("Series 1A", "G1"); keytogroupmap.mapKeyToGroup("Series 1B", "G1"); keytogroupmap.mapKeyToGroup("NOTHING", "G2"); groupedstackedbarrenderer.setSeriesToGroupMap(keytogroupmap); CategoryPlot categoryplot = new CategoryPlot(categorydataset, categoryaxis, numberaxis, groupedstackedbarrenderer) { private static final long serialVersionUID = 1L; public LegendItemCollection getLegendItems() { LegendItemCollection legenditemcollection = new LegendItemCollection(); legenditemcollection.addAll(getRenderer().getLegendItems()); CategoryDataset categorydataset2 = getDataset(1); if (categorydataset2 != null) { CategoryItemRenderer categoryitemrenderer = getRenderer(1); if (categoryitemrenderer != null) { org.jfree.chart.LegendItem legenditem = categoryitemrenderer.getLegendItem(1, 1); legenditemcollection.add(legenditem); }//w ww . j a va 2 s. co m } return legenditemcollection; } }; JFreeChart jfreechart = new JFreeChart("Dual Axis Bar Chart", categoryplot); categoryplot.setDomainAxisLocation(AxisLocation.BOTTOM_OR_RIGHT); categoryplot.setDataset(1, categorydataset1); categoryplot.mapDatasetToRangeAxis(1, 1); NumberAxis numberaxis1 = new NumberAxis("Secondary"); categoryplot.setRangeAxis(1, numberaxis1); categoryplot.setRangeAxisLocation(1, AxisLocation.BOTTOM_OR_RIGHT); BarRenderer barrenderer = new BarRenderer(); categoryplot.setRenderer(1, barrenderer); ChartUtilities.applyCurrentTheme(jfreechart); return jfreechart; }