📜  JFreeChart-3D饼图条形图(1)

📅  最后修改于: 2023-12-03 15:02:07.952000             🧑  作者: Mango

JFreeChart-3D饼图与条形图

JFreeChart是一个免费的Java图表库,可以用于创建各种类型的图表,包括条形图,折线图和饼图等。其中,3D饼图和条形图是比较常见的图表类型。

3D饼图

3D饼图是一种常用的数据可视化方式,可以清晰地显示数据的占比情况。使用JFreeChart创建3D饼图非常简单,只需要几行代码即可生成一个漂亮的图表。

以下是一个生成3D饼图的Java代码片段:

DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("Java", 28.5);
dataset.setValue("C", 22.5);
dataset.setValue("Python", 17.5);
dataset.setValue("Ruby", 12.5);
dataset.setValue("JavaScript", 9.5);
dataset.setValue("Other", 9.5);

JFreeChart chart = ChartFactory.createPieChart3D(
    "Programming Languages", // 图表标题
    dataset, // 数据集
    true, // 是否显示图例
    true, // 是否生成工具提示
    false // 是否生成URL链接
);

ChartFrame frame = new ChartFrame("Pie Chart", chart);
frame.pack();
frame.setVisible(true);

以上代码使用了一个名为DefaultPieDataset的类来存储数据,每个数据项都有一个名称和一个数值。调用ChartFactory.createPieChart3D()方法生成图表,并用ChartFrame来显示图表。

条形图

条形图是一种常用的数据可视化方式,可以直观地比较不同数据之间的差异。在JFreeChart中,创建条形图也非常简单。

以下是一个生成条形图的Java代码片段:

DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(1.0, "S1", "Jan");
dataset.addValue(4.0, "S1", "Feb");
dataset.addValue(3.0, "S1", "Mar");
dataset.addValue(5.0, "S1", "Apr");
dataset.addValue(2.0, "S2", "Jan");
dataset.addValue(3.0, "S2", "Feb");
dataset.addValue(2.0, "S2", "Mar");
dataset.addValue(6.0, "S2", "Apr");

JFreeChart chart = ChartFactory.createBarChart3D(
    "Sales Chart", // 图表标题
    "Month", // x轴标签
    "Sales", // y轴标签
    dataset, // 数据集
    PlotOrientation.VERTICAL, // 条形图方向
    true, // 是否显示图例
    true, // 是否生成工具提示
    false // 是否生成URL链接
);

ChartFrame frame = new ChartFrame("Bar Chart", chart);
frame.pack();
frame.setVisible(true);

以上代码使用了一个名为DefaultCategoryDataset的类来存储数据,每个数据项都有一个行名称、列名称和数值。调用ChartFactory.createBarChart3D()方法生成条形图,并用ChartFrame来显示图表。

以上是JFreeChart中生成3D饼图和条形图的简单介绍,更多详细信息可以参考JFreeChart官方文档。