JFreeChart - 引用的 API


在本章中,我们将讨论 JFreeChart 库中的一些重要的包、类和方法。这些包、类和方法是使用 JFreeChart 库创建各种图表时最常用的。

图表工厂类

ChartFactory是org.jfree.chart包下的一个抽象类。它提供了一系列用于生成标准图表的实用方法。

以下是一些重要方法的列表 -

类构造函数

序列号 描述
1

图表工厂()

ChartFactory 类的默认构造函数。

类方法

序列号 方法与说明
1

createPieChart(java.lang.String 标题、PieDataset 数据集、布尔图例、布尔工具提示、布尔 url)

此方法使用默认设置创建饼图。它返回 JfreeChart 类型对象。

2

createPieChart3D(java.lang.String 标题、PieDataset 数据集、布尔图例、布尔工具提示、布尔 url

此方法使用指定的数据集创建 3D 饼图。

3

createBarChart(java.lang.String title, java.lang.String CategoryAxisLabel, java.lang.String valueAxisLabel, CategoryDataset 数据集, PlotOrientation 方向, 布尔图例, 布尔工具提示, 布尔 url)

参数 java.lang.StringcategoryAxisLabel 是放置在 X 轴上的值的标签。参数 java.lang.String valueAxisLabel 是放置在 Y 轴上的值的标签。

此方法创建条形图。

4

createBarChart3D(java.lang.String标题,java.lang.StringcategoryAxisLabel,java.lang.StringvalueAxisLabel,CategoryDataset数据集,PlotOrientation方向,布尔图例,布尔工具提示,布尔url)

此方法创建具有 3D 效果的条形图。它返回 JfreeChart 类型对象。

5

createLineChart(java.lang.String title, java.lang.String CategoryAxisLabel, java.lang.String valueAxisLabel, CategoryDataset 数据集, PlotOrientation 方向, 布尔图例, 布尔工具提示, 布尔 url)

此方法使用默认设置创建折线图。

6

createLineChart3D(java.lang.String标题,java.lang.StringcategoryAxisLabel,java.lang.StringvalueAxisLabel,CategoryDataset数据集,PlotOrientation方向,布尔图例,布尔工具提示,布尔url)

此方法创建具有 3D 效果的折线图。

7

createXYLineChart(java.lang.String title, java.lang.String xAxisLabel, java.lang.String yAxisLabel, XYDataset 数据集, PlotOrientation 方向, 布尔图例, 布尔工具提示, 布尔 url)

此方法使用默认设置基于 XYDataset 创建折线图。

图表框架类

org.jfree.chart 包下的 ChartFrame 类提供了所有与框架相关的功能和实用程序。ChartFrame 类继承了父类(例如 Frame、Window、Container 和 Component 类)的功能。

类构造函数

序列号 构造函数和描述
1

ChartFrame(java.lang.Frame字符串,JfreeChart图表)

它构建了一个框架。

2

图表框架(java.lang.Frame 字符串、JfreeChart 图表、布尔滚动窗格)

它构建了一个框架。

类方法

序列号 方法及说明
1

获取图表面板()

此方法返回框架的图表面板。

图表面板类

org.jfree.chart包中的 ChartPanel 类用作显示 JfreeChart 对象的 swing GUI 组件。

类构造函数

序列号 构造函数和描述
1

ChartPanel(JFreeChart图表)

此构造函数构造一个显示指定图表的面板。

2

ChartPanel(JFreeChart图表,布尔useBuffer)

此构造函数构造一个包含图表的面板。

3

ChartPanel(JFreeChart图表,布尔属性,布尔保存,布尔打印,布尔缩放,布尔工具提示)

此构造函数构造一个 JFreeChart 面板。

类方法

序列号 方法及说明
1

setPreferredSize(java.awt.Dimension)

此方法用于使用 java.awt 设置帧大小。Dimension 类对象作为参数。该方法取自javax.swing.JComponent。

图表实用程序类

org.jfree.chart包中的 CharUtilites 类提供了 JFreeCharts 实用方法的集合,包括将图表转换为图像文件格式(如 PNG、JPEG)以及创建 HTML 图像映射的方法。

类构造函数

序列号 构造函数和描述
1

图表实用程序()

这是类的默认构造函数

类方法

序列号 方法及说明
1

saveChartAsPNG(java.io.File 文件,JfreeChart 图表,int 宽度,int 高度)

该方法将图表转换并保存为PNG格式的指定文件。

2

saveChartAsJPEG(java.io.File 文件,JfreeChart 图表,int 宽度,int 高度)

该方法将图表转换为JPEG格式并保存到指定文件中。

JFreeChart 类

JFreeChart类是org.jfree.chart包下的核心类。此类提供 JFreeChart 方法来创建条形图、折线图、饼图和包括时间序列数据的 xy 图。

类构造函数

序列号 构造函数和描述
1

JfreeChart(绘图)

此构造函数根据提供的绘图创建一个新图表。

2

JfreeChart(java.lang.String标题,java.awt.Font titleFont,绘图,布尔createLegend)

此构造函数创建一个具有给定标题和绘图的新图表。

3

JfreeChart(java.lang.String 标题, 绘图)

此构造函数创建一个具有给定标题和绘图的新图表。

类方法

序列号 方法及说明
1

获取XY图()

此方法将绘图返回为XYPlot。使用 XYPolt,我们可以对 xy 图表进行一些实用操作。

饼图类

该类是org.jfree.chart.plot包的一部分,并从同一包扩展 Plot 类。此类提供了创建饼图的方法。

类构造函数

序列号 构造函数和描述
1

饼图()

它创造了一个新的Plotly。

2

PiePlot(PieDataset数据集)

它创建一个绘图,为指定的数据集绘制饼图。

类方法

序列号 方法及说明
1

setStartAngle(双角)

此方法设置起始角度并向所有注册的侦听器发送 PlotChangeEvent

PiePlot3D 类

PiePlot3D 类是同一包下 PiePlot 类的子类。因此,该类具有与 PiePlot 类相同的功能,只不过它用于创建 3D 绘图。

类构造函数

序列号 构造函数和描述
1

PiePlot3D()

此构造函数创建一个没有数据集的新实例。

2

PiePlot3D(PieDataset数据集)

该构造函数使用指定的数据集创建具有三维效果的饼图。

类方法

序列号 方法及说明
1

setForegroundAlpha(浮动阿尔法)

它设置绘图的 alpha 透明度并向所有注册的侦听器发送 PlotChangeEvent。这是取自父 Plot 类之一。

2

setInteriorGap(双百分比)

它设置内部间隙并向所有注册的侦听器发送 PlotChangeEvent。这控制饼图边缘和绘图区域本身(即出现部分标签的区域)之间的空间。该方法取自父类PiePlot。

Plotly方向类

这是org.jfree.chart.plot包中提供的序列化类,用于显示 2D 绘图的方向。方向可以是垂直的水平的。它设置 Y 轴的方向。传统绘图具有垂直 Y 轴。

现场总结

序列号 类型 字段和描述
1 Plotly取向 HORIZONTAL对于范围轴(Y 轴)为水平的绘图。
2 Plotly取向 VERTICAL对于范围轴(Y 轴)垂直的绘图。这是默认方向。

类方法

序列号 方法及说明
1

isHorizo​​ntal()

如果此方向为 HORIZONTAL,则此方法返回 true,否则返回 false。

2

是垂直的()

如果此方向为 VERTICAL,则此方法返回 true,否则返回 false。

XY图类

这是org.jfree.chart.plot包中提供的通用类,用于以 (x,y) 对的形式绘制数据。该图可以使用来自实现 XYDataSet 接口的任何其他类的数据。XYPlot 使用 XYItemRenderer 绘制绘图上的每个点。

类构造函数

序列号 构造函数和描述
1

XY 图 ()

该承包商创建了一个新的 XYPlot 实例,没有数据集、轴和渲染器。

2

XYPlot(XYDataset数据集、ValueAxisdomainAxisValueAxisrangeAxisXYItemRenderer渲染器)

此构造函数使用指定的数据集、轴和渲染器创建一个新绘图。

类方法

序列号 方法及说明
1

setRenderer(XYItemRenderer渲染器)

此方法设置主数据集的渲染器并向所有注册的侦听器发送更改事件。

数轴类

该类在org.jfree.chart.axis包中可用,它可以访问任何轴的数值数据。当我们将任何轴的范围设置为默认值时,它都会根据数据的范围进行拟合。但是使用 NumberAxis 类我们可以设置域轴和范围轴的下边距和上边距。

类构造函数

序列号 构造函数和描述
1

数轴( )

这是 NumberAxis 的默认构造函数。

2

NumberAxis( java.lang.String 标签)

NumberAxis 构造函数在必要时使用默认值。

类方法

序列号 方法及说明
1

setLowerMargin(双边距)

它设置轴的下边距(作为轴范围的百分比)并向所有注册的侦听器发送AxisChangeEvent 。该方法取自 ValueAxis 类的父类。

2

setUpperMargin(双边距)

它设置轴的上边距(作为轴范围的百分比)并向所有注册的侦听器发送AxisChangeEvent 。ValueAxis 类中也存在此方法。

XYLineAndShapeRenderer 类

这是org.jfree.chart.renderer.xy包下提供的类,它负责用线条连接数据点并在每个数据点绘制形状。该渲染器类设计用于与XYPlot类一起使用。

类构造函数

序列号 构造函数及描述
1

XYLineAndShapeRenderer()

它创建一个新的渲染器,线条和形状都可见。

2

XYLineAndShapeRenderer(布尔线、布尔形状)

它创建一个具有特定属性的新渲染器。

类方法

序列号 方法及说明
1

setSeriesPaint(int 系列, java.awt.Paint 油漆)

此方法设置用于系列的绘制并将RendererChangeEvent发送到所有注册的侦听器。该方法取自 JFreeChart API 中渲染器包的 AbstratRenderer 抽象类。

2

setSeriesStroke(int 系列, java.awt.Stroke 笔划)

此方法设置用于系列的笔划,并将RendererChangeEvent发送到所有注册的侦听器。该方法取自 AbstratRenderer 抽象类,它是该包的超类。

XYItemRenderer 通用数据集

这是一个用于在 XY 图上呈现单个 (x, y) 项的格式的接口。该包是org.Jfree.data.general,它具有用于定义不同类型的数据集来构建图表的类和接口。

饼图数据集

这是一个用作通用数据集的接口,其中值与键相关联。顾名思义,您可以使用此数据集为饼图提供数据。该接口扩展了 KeyedValues 和 DataSet 接口。该接口使用的所有方法均取自 KeyedValues、Values 和 Dataset 接口。

默认PieDataset类

这是 PieDataset 接口的默认实现类。

类构造函数

序列号 构造函数和描述
1

默认Pie数据集()

此构造函数创建一个新的数据集,最初为空。

2

DefaultPieDataset(KeyedValues 数据)

它通过从KeyedValues实例复制数据来创建新的数据集。

类方法

序列号 方法及说明
1

setValue(java.lang.Comparable 键,双精度值)

它设置键的数据值并将DatasetChangeEvent发送到所有注册的侦听器。

2

setValue(java.lang.Comparable 键,java.lang.Number 值)

它设置键的数据值并将DatasetChangeEvent发送到所有注册的侦听器。

SeriesException 类

这是一个异常类。它引发了数据集中数据时间序列中发生的异常。出现重复或无效数据时会引发异常。时间序列不得重复应用,且格式必须有效。

默认类别数据集

这是CategoryDataset接口的默认实现类。

类构造函数

序列号 构造函数和描述
1

默认类别数据集()

此构造函数创建新的空数据集。

类方法

序列号 方法及说明
1

addValue(双精度值, java.lang.Comparable rowKey, java.lang.Comparable columnKey)

此方法使用可比较的键向表中添加值。

2

addValue(java.lang.Number 值, java.lang.Comparable rowKey, java.lang.Comparable columnKey)

此方法向表中添加一个值。

3

setValue(双精度值, java.lang.Comparable rowKey, java.lang.Comparable columnKey)

此方法添加或更新表中的值并将DatasetChangeEvent发送到所有注册的侦听器。

4

setValue(java.lang.Number 值, java.lang.Comparable rowKey, java.lang.Comparable columnKey)

此方法添加或更新表中的值并将DatasetChangeEvent发送到所有注册的侦听器。

有关各种其他方法和字段的更多信息,请参阅 JFreeChart API。

系列数据集

系列数据集由 XY 图表使用。该包是org.Jfree.data.xy,其中包含属于 xy 图表的类和接口。核心接口是XYDataset。

XY数据集

这是一个接口,通过它可以访问 (x,y) 项形式的数据。顾名思义,您可以使用此数据集来提供 XY 图表。该接口中的一些方法取自SeriesDateset接口。

XYZ数据集

这是一个接口,通过它可以访问 (x,y,z) 项形式的数据。顾名思义,您可以使用此数据集来提供 XYZ 图表。该接口中的一些方法取自SeriesDateset。

XY系列

这是一个类,表示 (x, y) 形式的零个或多个数据项的序列。默认情况下,系列中的项目按 x 值升序排序,并且允许重复的 x 值。排序和重复默认值都可以在构造函数中更改。Y 值可以表示为 null 以表示缺失值。

类构造函数

序列号 构造函数和描述
1

XYSeries(java.lang.Comparable key)

此构造函数创建一个新的空系列。

2

XYSeries(java.lang.Comparable key, 布尔自动排序)

它构造一个新的空系列,并根据请求设置自动排序标志,并且允许重复值。

3

XYSeries(java.lang.Comparable key,布尔自动排序,布尔allowDuplicateXValues)

它构造一个不包含数据的新 xy 系列。

类方法

序列号 方法及说明
1

添加(双 x,双 y)

此方法将数据项添加到系列中。

教程示例中使用了上述方法。如果您想了解其余的方法和字段,请参考JFreeChart API。

XY系列系列

XYSeriesCollection 类具有 AbstractIntervelDataset、AbstractXYDatset、AbstractSeriesDataset 和 AbstractDataset 等父类。该类中的一些方法属于该类的父类。

类构造函数

序列号 构造函数和描述
1

XYSeriesCollection()

它构造一个空数据集。

2

XY系列集合(XYSeries xyseries)

它构建一个数据集并用单个系列填充它。

类方法

序列号 方法及说明
1

addSeries(XYSeries系列)

此方法将一系列添加到集合中,并将DatasetChangeEvent发送到所有注册的侦听器。

请参阅 JFreeChart API 了解其余方法和字段。

默认 XYZ 数据集

DefaultXYZDataset 类具有 AbstractIntervelDataset、AbstractXYDatset、AbstractSeriesDataset、AbstractDataset 和 AbstractXYZDataset 等父类。该类中的一些方法属于该类的父类。

类构造函数

序列号 构造函数和描述
1

默认XYZ数据集()

它构造一个空数据集。

类方法

序列号 方法及说明
1

addSeries(java.lang.Comparable seriesKey, double[ ][ ] data )

此方法将一系列添加到集合中,并将DatasetChangeEvent发送到所有注册的侦听器。

其余方法和字段请参考 JFreeChart API。

JFreeCharts 中的时间序列

该包是org.jfree.data.time。该包包含用于时间相关数据的类和接口。

时间序列

此类表示周期值形式的数据项序列,其中周期是 RegularTimePeriod 抽象类的一些实例,例如 Time、Day、Hour、Minute 和 Second 类。

类构造函数

序列号 构造函数和描述
1

TimeSeries(java.lang.Comparable name)

它创建新的空系列。

2

TimeSeries(java.lang.Comarable 名称、java.lang.String 域、java.lang.Strin 范围)

它创建不包含数据的新时间序列。

类方法

序列号 方法及说明
1

添加(RegularTimePeriod 周期,双精度值)

此方法将新数据项添加到系列中。

请参阅 JFreeChart API 了解其余方法和字段。

时间序列集合

这是一个用作时间序列对象集合的类。该类实现 XYDataset 接口,并扩展 IntervelXYDataset 接口。这使得收集系列数据对象变得很方便。

类构造函数

序列号 构造函数和描述
1

时间序列集合()

它构建一个与默认时区相关的空数据集。

2

TimeSeriesCollection(TimeSeries系列)

它构建一个包含单个系列(可以添加更多)的数据集,并与默认时区相关。

3

TimeSeriesCollection(TimeSeries系列,java.util.TimeZone 区域)

它构建一个包含与特定时区相关的单个系列(可以添加更多系列)的数据集。

4

TimeSeriesCollection(java.util.TimeZone 区域)

它构建一个与特定时区相关的空数据集。

类方法

序列号 方法及说明
1

addSeries(时间序列系列)

此方法将一系列添加到集合中,并将DatasetChangeEvent发送到所有注册的侦听器。

其余方法和字段请参考 JFreeChart API。

第二

该类代表特定一天中的一秒钟。该类是不可变的,这是所有 RegularTimePeriod 子类的要求。

类构造函数

序列号 构造函数和描述
1

第二()

它根据系统日期/时间构造一个新的 Second。

2

第二(java.util.日期时间)

它根据指定的日期/时间和默认时区构造一个新实例。

3

第二(java.util.Date时间,java.util.TimeZone区域,java.util.Locale区域设置)

它根据提供的时间和时区创建新的秒。

4

Second(int 秒、int 分钟、int 小时、int 日、int 月、int 年

它创造了新的一秒。

5

秒(int 秒,分钟 分钟)

它构建了一个新的第二。

类方法

序列号 方法及说明
1

获取第二个()

它返回一分钟内的秒数。

2

下一个()

它返回当前秒之后的第二个。

其余方法和字段请参考 JFreeChart API。

JFreeCharts 中的框架

该包是org.jfree.ui。这是属于 JFreeChart 的 JCommons API 的包。它包含用于为预配置图表创建框架的实用程序类。

应用框架

这是用于创建简单应用程序主框架的基类。该框架侦听窗口关闭事件,并通过关闭 JVM 进行响应。这对于小型演示应用程序来说很好。对于企业应用程序,您需要使用更强大的东西。该类中的主要核心方法取自 Component、Container、Window、Frame 和 Jframe 类。

类构造函数

序列号 构造函数及描述
1

ApplicationFrame(java.lang.String 标题)

它创建一个带有字符串标题的应用程序框架。

此类有助于创建 AWT 框架。这就是我们在本教程示例中使用此类作为超类的原因。

从父类中获取的方法用于打开框架、关闭框架、更改大小、更改背景或前景色以及侦听器。

炼油厂公用事业

这是与用户界面相关的实用方法的类集合。

类方法

序列号 方法及说明
1

centerFrameOnScreen(java.awt.窗口框架)

它将指定的框架放置在屏幕中间。

教程示例中使用了上述方法。有关其余方法和字段,请参阅 JFreeChart API。