List of usage examples for org.jfree.chart ChartUtilities applyCurrentTheme
public static void applyCurrentTheme(JFreeChart chart)
From source file:com.intel.stl.ui.common.view.ComponentFactory.java
public static JFreeChart createStackedXYBarChart(XYDataset dataset, String title, String domainAxisLabel, String rangeAxisLabel, boolean legend) { DateAxis dateaxis = new DateAxis(domainAxisLabel); NumberAxis numberaxis = new NumberAxis(rangeAxisLabel); StackedXYBarRenderer stackedxybarrenderer = new StackedXYBarRenderer(0.10000000000000001D); XYPlot xyplot = new XYPlot(dataset, dateaxis, numberaxis, stackedxybarrenderer); JFreeChart jfreechart = new JFreeChart(title, UIConstants.H5_FONT, xyplot, legend); ChartUtilities.applyCurrentTheme(jfreechart); stackedxybarrenderer.setShadowVisible(false); stackedxybarrenderer.setDrawBarOutline(false); stackedxybarrenderer.setBarPainter(new StandardXYBarPainter()); stackedxybarrenderer.setBaseToolTipGenerator(new StandardXYToolTipGenerator( "<html><b>{0}</b><br> Time: {1}<br> Data: {2}</html>", Util.getHHMMSS(), new DecimalFormat("###"))); xyplot.setBackgroundPaint(null);// www . j a va 2 s. c o m xyplot.setOutlinePaint(null); xyplot.setRangeGridlinePaint(UIConstants.INTEL_BORDER_GRAY); dateaxis.setLabelFont(UIConstants.H5_FONT); dateaxis.setLowerMargin(0.0D); dateaxis.setUpperMargin(0.0D); numberaxis.setRangeType(RangeType.POSITIVE); numberaxis.setLabelFont(UIConstants.H5_FONT); numberaxis.setLabelInsets(new RectangleInsets(0, 0, 0, 0)); numberaxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); return jfreechart; }
From source file:beproject.MainGUI.java
void createTimeLine() throws SQLException { TimeSeriesCollection dataset = new TimeSeriesCollection(); getTimeLineData(dataset);//w w w.ja v a 2s .c om DateAxis domain = new DateAxis("Time"); NumberAxis range = new NumberAxis("Tweet Count"); XYItemRenderer renderer = new XYLineAndShapeRenderer(true, false); renderer.setSeriesPaint(1, Color.BLUE); renderer.setSeriesStroke(0, new BasicStroke(3f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL)); renderer.setSeriesStroke(1, new BasicStroke(3f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL)); XYPlot plot = new XYPlot(dataset, domain, range, renderer); domain.setAutoRange(true); domain.setTickUnit(new DateTickUnit(DateTickUnitType.HOUR, 2, Regression.sdf)); domain.setLowerMargin(0.0); domain.setUpperMargin(0.0); domain.setTickLabelsVisible(true); range.setTickLabelsVisible(true); plot.setDomainGridlinesVisible(false); range.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); renderer.setBaseItemLabelsVisible(true); JFreeChart liveTweetAnalysisChart = new JFreeChart("Rate of tweets per hour", new Font("Tahoma", Font.BOLD, 24), plot, true); liveTweetAnalysisChart.setBorderVisible(false); ChartUtilities.applyCurrentTheme(liveTweetAnalysisChart); domain.setTickLabelInsets(RectangleInsets.ZERO_INSETS); range.setTickMarksVisible(false); range.setTickLabelInsets(RectangleInsets.ZERO_INSETS); domain.setTickMarksVisible(false); liveTweetAnalysisChart.setPadding(RectangleInsets.ZERO_INSETS); ChartPanel liveTweetAnalysisChartPanel = new ChartPanel(liveTweetAnalysisChart, true); liveTweetAnalysisChartPanel.setBorder(null); if (timeLineChart == null) { timeLineChart = liveTweetAnalysisChartPanel; } else { timeLinePanel.remove(timeLineChart); timeLineChart = liveTweetAnalysisChartPanel; } timeLinePanel.add(timeLineChart); timeLinePanel.validate(); }
From source file:beproject.MainGUI.java
void createPieChart() throws SQLException { DefaultPieDataset dataset = new DefaultPieDataset(); String tmp = "select polarity, count(polarity) from tweets where moviename='" + movieName + "' group by polarity"; ResultSet rs = stmt.executeQuery(tmp); while (rs.next()) { int a = rs.getInt(1); switch (a) { case 4:/*from w w w . j ava 2s .co m*/ dataset.setValue("Very Positive", rs.getInt(2)); break; case 3: dataset.setValue("Positive", rs.getInt(2)); break; case 2: dataset.setValue("Neutral", rs.getInt(2)); break; case 1: dataset.setValue("Negative", rs.getInt(2)); break; case 0: dataset.setValue("Very Negative", rs.getInt(2)); break; } } JFreeChart chart = ChartFactory.createPieChart("Sentiment Analysis", dataset, true, true, false); chart.setBackgroundPaint(Color.WHITE); chart.setBorderVisible(false); PiePlot p = (PiePlot) chart.getPlot(); //p.setSectionPaint("Very Negative", Color.BLACK); p.setSectionPaint("Negative", Color.BLACK); //p.setSectionPaint("Neutral", new Color(3, 156, 248)); //p.setSectionPaint("Positive", new Color(96, 194, 253)); //p.setSectionPaint("Very Positive", new Color(0xffffff)); p.setSimpleLabels(true); ChartUtilities.applyCurrentTheme(chart); if (pieChart == null) { pieChart = new ChartPanel(chart); sentimentPanel.add(pieChart); } else { sentimentPanel.remove(pieChart); pieChart = new ChartPanel(chart); sentimentPanel.add(pieChart); } pieChart.setBackground(Color.WHITE); sentimentPanel.validate(); }
From source file:beproject.MainGUI.java
void liveTweetAnalysis() { new DataGenerator(1000).start(); rate = new TimeSeries("Total count", Second.class); rate.setMaximumItemAge(15);// w ww.j a v a 2s. c o m TimeSeriesCollection dataset = new TimeSeriesCollection(); dataset.addSeries(rate); DateAxis domain = new DateAxis("Time"); NumberAxis range = new NumberAxis("Tweet Count"); XYItemRenderer renderer = new XYLineAndShapeRenderer(true, false); renderer.setSeriesPaint(1, Color.BLUE); renderer.setSeriesStroke(0, new BasicStroke(3f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL)); renderer.setSeriesStroke(1, new BasicStroke(3f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL)); XYPlot plot = new XYPlot(dataset, domain, range, renderer); domain.setAutoRange(true); domain.setLowerMargin(0.0); domain.setUpperMargin(0.0); domain.setTickLabelsVisible(true); range.setTickLabelsVisible(true); plot.setDomainGridlinesVisible(false); range.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); renderer.setBaseItemLabelsVisible(true); JFreeChart liveTweetAnalysisChart = new JFreeChart("Tweets Per Second", new Font("Tahoma", Font.BOLD, 24), plot, true); liveTweetAnalysisChart.setBorderVisible(false); liveTweetAnalysisChart.setBorderPaint(null); ChartUtilities.applyCurrentTheme(liveTweetAnalysisChart); domain.setTickLabelInsets(RectangleInsets.ZERO_INSETS); range.setTickMarksVisible(false); range.setTickLabelInsets(RectangleInsets.ZERO_INSETS); domain.setTickMarksVisible(false); liveTweetAnalysisChart.setPadding(RectangleInsets.ZERO_INSETS); ChartPanel liveTweetAnalysisChartPanel = new ChartPanel(liveTweetAnalysisChart, true); liveTweetAnalysisChartPanel.setBorder(null); liveTweetsAnalysisPanel.add(liveTweetAnalysisChartPanel, BorderLayout.CENTER); liveTweetsAnalysisPanel.validate(); }