package demo;
import java.awt.BasicStroke;
import java.awt.Dimension;
import java.awt.Polygon;
import java.awt.Shape;
import java.awt.geom.Rectangle2D.Double;
import javax.swing.JPanel;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.labels.StandardCategoryItemLabelGenerator;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.DefaultDrawingSupplier;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.renderer.category.CategoryItemRenderer;
import org.jfree.chart.renderer.category.LineAndShapeRenderer;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
public class LineChartDemo5 extends ApplicationFrame
{
public LineChartDemo5(String paramString)
{
super(paramString);
JPanel localJPanel = createDemoPanel();
localJPanel.setPreferredSize(new Dimension(500, 270));
setContentPane(localJPanel);
}
private static CategoryDataset createDataset()
{
String str1 = "First";
String str2 = "Second";
String str3 = "Third";
String str4 = "Type 1";
String str5 = "Type 2";
String str6 = "Type 3";
String str7 = "Type 4";
String str8 = "Type 5";
String str9 = "Type 6";
String str10 = "Type 7";
String str11 = "Type 8";
DefaultCategoryDataset localDefaultCategoryDataset = new DefaultCategoryDataset();
localDefaultCategoryDataset.addValue(1.0D, str1, str4);
localDefaultCategoryDataset.addValue(4.0D, str1, str5);
localDefaultCategoryDataset.addValue(3.0D, str1, str6);
localDefaultCategoryDataset.addValue(5.0D, str1, str7);
localDefaultCategoryDataset.addValue(5.0D, str1, str8);
localDefaultCategoryDataset.addValue(7.0D, str1, str9);
localDefaultCategoryDataset.addValue(7.0D, str1, str10);
localDefaultCategoryDataset.addValue(8.0D, str1, str11);
localDefaultCategoryDataset.addValue(5.0D, str2, str4);
localDefaultCategoryDataset.addValue(7.0D, str2, str5);
localDefaultCategoryDataset.addValue(6.0D, str2, str6);
localDefaultCategoryDataset.addValue(8.0D, str2, str7);
localDefaultCategoryDataset.addValue(4.0D, str2, str8);
localDefaultCategoryDataset.addValue(4.0D, str2, str9);
localDefaultCategoryDataset.addValue(2.0D, str2, str10);
localDefaultCategoryDataset.addValue(1.0D, str2, str11);
localDefaultCategoryDataset.addValue(4.0D, str3, str4);
localDefaultCategoryDataset.addValue(3.0D, str3, str5);
localDefaultCategoryDataset.addValue(2.0D, str3, str6);
localDefaultCategoryDataset.addValue(3.0D, str3, str7);
localDefaultCategoryDataset.addValue(6.0D, str3, str8);
localDefaultCategoryDataset.addValue(3.0D, str3, str9);
localDefaultCategoryDataset.addValue(4.0D, str3, str10);
localDefaultCategoryDataset.addValue(3.0D, str3, str11);
return localDefaultCategoryDataset;
}
private static JFreeChart createChart(CategoryDataset paramCategoryDataset)
{
JFreeChart localJFreeChart = ChartFactory.createLineChart("Line Chart Demo 5", "Type", "Value", paramCategoryDataset, PlotOrientation.VERTICAL, true, true, false);
Shape[] arrayOfShape = new Shape[3];
int[] arrayOfInt1 = { -3, 3, -3 };
int[] arrayOfInt2 = { -3, 0, 3 };
arrayOfShape[0] = new Polygon(arrayOfInt1, arrayOfInt2, 3);
arrayOfShape[1] = new Rectangle2D.Double(-2.0D, -3.0D, 3.0D, 6.0D);
arrayOfInt1 = new int[] { -3, 3, 3 };
arrayOfInt2 = new int[] { 0, -3, 3 };
arrayOfShape[2] = new Polygon(arrayOfInt1, arrayOfInt2, 3);
DefaultDrawingSupplier localDefaultDrawingSupplier = new DefaultDrawingSupplier(DefaultDrawingSupplier.DEFAULT_PAINT_SEQUENCE, DefaultDrawingSupplier.DEFAULT_OUTLINE_PAINT_SEQUENCE, DefaultDrawingSupplier.DEFAULT_STROKE_SEQUENCE, DefaultDrawingSupplier.DEFAULT_OUTLINE_STROKE_SEQUENCE, arrayOfShape);
CategoryPlot localCategoryPlot = (CategoryPlot)localJFreeChart.getPlot();
localCategoryPlot.setOrientation(PlotOrientation.HORIZONTAL);
localCategoryPlot.setDrawingSupplier(localDefaultDrawingSupplier);
localCategoryPlot.getRenderer().setSeriesStroke(0, new BasicStroke(2.0F, 1, 1, 1.0F, new float[] { 10.0F, 6.0F }, 0.0F));
localCategoryPlot.getRenderer().setSeriesStroke(1, new BasicStroke(2.0F, 1, 1, 1.0F, new float[] { 6.0F, 6.0F }, 0.0F));
localCategoryPlot.getRenderer().setSeriesStroke(2, new BasicStroke(2.0F, 1, 1, 1.0F, new float[] { 2.0F, 6.0F }, 0.0F));
LineAndShapeRenderer localLineAndShapeRenderer = (LineAndShapeRenderer)localCategoryPlot.getRenderer();
localLineAndShapeRenderer.setBaseShapesVisible(true);
localLineAndShapeRenderer.setBaseItemLabelsVisible(true);
localLineAndShapeRenderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator());
NumberAxis localNumberAxis = (NumberAxis)localCategoryPlot.getRangeAxis();
localNumberAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
localNumberAxis.setAutoRangeIncludesZero(false);
localNumberAxis.setUpperMargin(0.12D);
return localJFreeChart;
}
public static JPanel createDemoPanel()
{
JFreeChart localJFreeChart = createChart(createDataset());
return new ChartPanel(localJFreeChart);
}
public static void main(String[] paramArrayOfString)
{
LineChartDemo5 localLineChartDemo5 = new LineChartDemo5("JFreeChart: LineChartDemo5.java");
localLineChartDemo5.pack();
RefineryUtilities.centerFrameOnScreen(localLineChartDemo5);
localLineChartDemo5.setVisible(true);
}
}
分享到:
相关推荐
集中了大部分的JFreeChart示例,并做了相应的接口,以WEB方式表现,使用前请将您的IDE工具字符集设置成UTF-8。
资源为JfreeChart示例,本人亲测。另外在运行时需要jcommon-1.0.9.jar和jfreechart-1.0.5.jar两个包,也在资源里面。 如果好用的话别忘记评价哦,希望对你有帮助。
JFreeChart 指南 JFreeChart Guide JFreeChart 示例 JFreeChart demo
jfreechart示例用于自己分析jfreechart示例用于自己分析jfreechart示例用于自己分析jfreechart示例用于自己分析
JFreeChart示例 JAVA_JFreeChart的应用 JFreeChart 教程
jfreechart示例图片dfsdfdsfdsfffffffffffffffffffffffdsfsdf
jfreechart示例工程 jfreechart示例工程 jfreechart类的简单说明
想要用java画图表,这个非常好,附带demo源码学习。
jFreeChart封装标签(源码),直接在jsp页面上即可使用。使用时带入数据源、图表类型、颜色……生成你想要的图表。非常方便,前端设计都可以直接调用。
JFreeChart是JAVA平台上的一个开放的图表绘制类库,它是目前比较流行的Java Chart API,而且是一个开源项目。它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用所设计。JFreeChart可生成...
JFreeChart是JAVA平台上的一个开放的图表绘制类库。它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用所设计。JFreeChart可生成饼图(pie charts)、柱状图(bar charts)、散点图...
JFreeChart demo,JFreeChart 示例
jfreechart 1.0.13 示例 源码 java 图标
jfreechart示例,可直接引入项目,适合初次接触jfreechar的朋友,可生成柱状图,饼状图,折线图
Jfreechart中文示例(含注解说明,个人认为是比较全面的示例了)
Jfreechart封装示例,简单调用即可。