JFreeChart – 引用的 API
JFreeChart – 引用的 API
在本章中,我们将讨论 JFreeChart 库中的一些重要包、类和方法。这些包、类和方法是使用 JFreeChart 库创建各种图表时最常用的。
图表工厂类
ChartFactory的是下一个抽象类org.jfree.chart包。它提供了一组用于生成标准图表的实用方法。
以下是一些重要方法的列表 –
类构造函数
S.No | 描述 |
---|---|
1 |
ChartFactory() ChartFactory 类的默认构造函数。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
createPieChart(java.lang.String title, PieDataset dataset, boolean legend, boolean tooltips, boolean urls) 此方法使用默认设置创建饼图。它返回 JfreeChart 类型对象。 |
2 |
createPieChart3D(java.lang.String title, PieDataset dataset, boolean legend, boolean tooltips, boolean urls 此方法使用指定的数据集创建 3D 饼图。 |
3 |
createBarChart(java.lang.String title, java.lang.String categoryAxisLabel, java.lang.String valueAxisLabel, CategoryDataset dataset, PlotOrientation orientation, boolean legend, boolean tooltips, boolean urls) 参数 java.lang.String categoryAxisLabel 是放置在 X 轴上的值的标签。参数 java.lang.String valueAxisLabel 是放置在 Y 轴上的值的标签。 此方法创建条形图。 |
4 |
createBarChart3D(java.lang.String title, java.lang.String categoryAxisLabel, java.lang.String valueAxisLabel, CategoryDataset dataset, PlotOrientation orientation, boolean legend, boolean tooltips, boolean urls) 此方法创建具有 3D 效果的条形图。它返回 JfreeChart 类型对象。 |
5 |
createLineChart(java.lang.String title, java.lang.String categoryAxisLabel, java.lang.String valueAxisLabel, CategoryDataset dataset, PlotOrientation orientation, boolean legend, boolean tooltips, boolean urls) 此方法使用默认设置创建折线图。 |
6 |
createLineChart3D(java.lang.String title, java.lang.String categoryAxisLabel, java.lang.String valueAxisLabel, CategoryDataset dataset, PlotOrientation orientation, boolean legend, boolean tooltips, boolean urls) 此方法创建具有 3D 效果的折线图。 |
7 |
createXYLineChart(java.lang.String title, java.lang.String xAxisLabel, java.lang.String yAxisLabel, XYDataset dataset, PlotOrientation orientation, boolean legend, boolean tooltips, boolean urls) 此方法使用默认设置基于 XYDataset 创建折线图。 |
ChartFrame 类
org.jfree.chart 包下的 ChartFrame 类,提供所有与框架相关的功能和实用程序。ChartFrame 类继承了父类的功能,例如 Frame、Window、Container 和 Component 类。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
ChartFrame (java.lang.Frame String, JfreeChart chart) 它构建了一个框架。 |
2 |
Chart Frame (java.lang.Frame String, JfreeChart chart, boolean scrollpane) 它构建了一个框架。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
getChartPanel() 此方法返回框架的图表面板。 |
图表面板类
从ChartPanel类org.jfree.chart包被用作用于显示的JFreeChart对象摆动GUI部件。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
ChartPanel(JFreeChart chart) 此构造函数构造一个显示指定图表的面板。 |
2 |
ChartPanel(JFreeChart chart, boolean useBuffer) 此构造函数构造一个包含图表的面板。 |
3 |
ChartPanel(JFreeChart chart, boolean properties, boolean save, boolean print, boolean zoom, boolean tooltips) 此构造函数构造一个 JFreeChart 面板。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
setPreferredSize(java.awt.Dimension) 此方法用于使用 java.awt 设置帧大小。维度类对象作为参数。该方法取自 javax.swing.JComponent。 |
ChartUtilities 类
从CharUtilites类org.jfree.chart包提供的JFreeCharts包括用于转换成图表的图像文件格式,例如PNG,JPEG,以及创建HTML图像映射方法的实用方法的集合。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
ChartUtilities() 这是一个类的默认构造函数 |
类方法
S.No | 方法和说明 |
---|---|
1 |
saveChartAsPNG(java.io.File file, JfreeChart chart, int width, int height) 此方法将图表转换并以 PNG 格式保存到指定文件。 |
2 |
saveChartAsJPEG(java.io.File file, JfreeChart chart, int width, int height) 此方法将图表以 JPEG 格式转换并保存到指定文件。 |
JFreeChart 类
JFreeChart 类是org.jfree.chart包下的核心类。此类提供 JFreeChart 方法来创建条形图、折线图、饼图和包含时间序列数据的 xy 图。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
JfreeChart(Plot plot) 此构造函数基于提供的绘图创建一个新图表。 |
2 |
JfreeChart(java.lang.String title, java.awt.Font titleFont, Plot plot, boolean createLegend) 此构造函数创建一个具有给定标题和绘图的新图表。 |
3 |
JfreeChart(java.lang.String title, Plot plot) 此构造函数创建一个具有给定标题和绘图的新图表。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
getXYPlot() 此方法以XYPlot 形式返回绘图图表。使用 XYPolt,我们可以对 xy 图表进行一些实用操作。 |
饼图类
这个类是org.jfree.chart.plot包的一部分,从同一个包中扩展了 Plot 类。此类提供创建饼图的方法。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
PiePlot() 它创建了一个新的情节。 |
2 |
PiePlot(PieDataset dataset) 它创建一个绘图,为指定的数据集绘制饼图。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
setStartAngle(double angle) 此方法设置起始角度并向所有注册的侦听器发送 PlotChangeEvent |
PiePlot3D 类
PiePlot3D 类是同包下 PiePlot 类的子类。因此,该类与 PiePlot 类具有相同的功能,只是它用于创建 3D 绘图。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
PiePlot3D() 此构造函数创建一个没有数据集的新实例。 |
2 |
PiePlot3D(PieDataset dataset) 此构造函数使用指定的数据集创建具有三维效果的饼图。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
setForegroundAlpha(float alpha) 它设置绘图的 alpha 透明度并向所有注册的侦听器发送 PlotChangeEvent。这是取自父 Plot 类之一。 |
2 |
setInteriorGap(double percent) 它设置内部间隙并向所有注册的侦听器发送 PlotChangeEvent。这控制了饼图边缘和绘图区域本身(即出现截面标签的区域)之间的空间。该方法取自父类 PiePlot。 |
绘图方向类
这是org.jfree.chart.plot包中可用的序列化类,用于显示 2D 绘图的方向。方向可以是垂直的或水平的。它设置 Y 轴的方向。常规绘图具有垂直的 Y 轴。
字段摘要
S.No | 类型 | 字段和描述 |
---|---|---|
1 | 绘图方向 | HORIZONTAL对于范围轴(Y 轴)为水平的绘图。 |
2 | 绘图方向 | VERTICAL对于范围轴(Y 轴)是垂直的绘图。这是默认方向。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
isHorizontal() 如果此方向为 HORIZONTAL,则此方法返回 true,否则返回 false。 |
2 |
isVertical() 如果此方向为 VERTICAL,则此方法返回 true,否则返回 false。 |
XYPlot 类
这是org.jfree.chart.plot包中的通用类,用于以 (x,y) 对的形式绘制数据。该图可以使用来自实现 XYDataSet 接口的任何其他类的数据。XYPlot 使用 XYItemRenderer 在绘图上绘制每个点。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
XYPlot() 该承包商创建了一个没有数据集、没有轴和没有渲染器的新 XYPlot 实例。 |
2 |
XYPlot(XYDataset 数据集、ValueAxis domainAxis、ValueAxis rangeAxis、XYItemRenderer渲染器) 此构造函数使用指定的数据集、轴和渲染器创建一个新图。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
setRenderer(XYItemRenderer渲染器) 此方法设置主数据集的渲染器并向所有注册的侦听器发送更改事件。 |
数轴类
这个类在org.jfree.chart.axis包中可用,它可以访问任何轴的数值数据。当我们将任意轴的范围设置为默认值时,它会根据数据的范围进行拟合。但是使用 NumberAxis, class 我们可以设置域和范围轴的下边距和上边距。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
NumberAxis( ) 这是 NumberAxis 的默认构造函数。 |
2 |
NumberAxis( java.lang.String label) 构造函数 NumberAxis 在必要时使用默认值。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
setLowerMargin(double margin) 它设置轴的下边距(作为轴范围的百分比)并向所有注册的侦听器发送AxisChangeEvent。该方法取自 ValueAxis 类的父类。 |
2 |
setUpperMargin(double margin) 它设置轴的上边距(作为轴范围的百分比)并向所有注册的侦听器发送AxisChangeEvent。该方法也存在于 ValueAxis 类中。 |
XYLineAndShapeRenderer 类
这是在org.jfree.chart.renderer.xy包下可用的类,它负责用线连接数据点并在每个数据点绘制形状。此渲染器类旨在与XYPlot类一起使用。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
XYLineAndShapeRenderer() 它创建了一个新的渲染器,线条和形状都可见。 |
2 |
XYLineAndShapeRenderer(布尔线,布尔形状) 它创建一个具有特定属性的新渲染器。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
setSeriesPaint(int series, java.awt.Paint paint) 此方法设置用于系列的绘制并将RendererChangeEvent发送到所有注册的侦听器。该方法取自 JFreeChart API 中渲染器包的 AbstratRenderer 抽象类。 |
2 |
setSeriesStroke(int series, java.awt.Stroke stroke) 此方法设置用于系列的笔画并向所有注册的侦听器发送RendererChangeEvent。该方法取自 AbstratRenderer 抽象类,是该包的超类。 |
XYItemRenderer 通用数据集
这是一个用于在 XYPlot 上渲染单个 (x, y) 项目格式的接口。包是org.Jfree.data.general,它有类和接口来定义不同类型的数据集来构建图表。
饼数据集
这是一个用作通用数据集的接口,其中值与键相关联。顾名思义,您可以使用此数据集为饼图提供数据。该接口扩展了 KeyedValues 和 DataSet 接口。此接口使用的所有方法均取自 KeyedValues、Values 和 Dataset 接口。
DefaultPieDataset 类
这是 PieDataset 接口的默认实现类。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
DefaultPieDataset() 此构造函数创建一个新数据集,最初为空。 |
2 |
DefaultPieDataset(KeyedValues data) 它通过从KeyedValues实例复制数据来创建新数据集。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
setValue(java.lang.Comparable key, double value) 它设置键的数据值并向所有注册的侦听器发送DatasetChangeEvent。 |
2 |
setValue(java.lang.Comparable key, java.lang.Number value) 它设置键的数据值并向所有注册的侦听器发送DatasetChangeEvent。 |
系列异常类
这是一个异常类。它引发了数据集中数据时间序列中发生的异常。出现重复或无效数据时会引发异常。时间序列不得重复应用,并且格式必须有效。
默认类别数据集
这是 CategoryDataset 接口的默认实现类。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
DefaultCategoryDataset() 此构造函数创建新的空数据集。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
addValue(double value, java.lang.Comparable rowKey, java.lang.Comparable columnKey) 此方法使用可比较的键向表中添加一个值。 |
2 |
addValue(java.lang.Number value, java.lang.Comparable rowKey, java.lang.Comparable columnKey) 此方法向表中添加一个值。 |
3 |
setValue(double value, java.lang.Comparable rowKey, java.lang.Comparable columnKey) 此方法添加或更新表中的值并向所有注册的侦听器发送DatasetChangeEvent。 |
4 |
setValue(java.lang.Number value, 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 值可以表示为空以表示缺失值。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
XYSeries(java.lang.Comparable key) 此构造函数创建一个新的空系列。 |
2 |
XYSeries(java.lang.Comparable key, boolean autoSort) 它构造一个新的空系列,根据请求设置自动排序标志,并允许重复值。 |
3 |
XYSeries(java.lang.Comparable key, boolean autoSort, boolean allowDuplicateXValues) 它构造了一个不包含数据的新 xy 系列。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
add(double x, double y) 此方法将数据项添加到系列中。 |
上述方法在教程示例中使用。如果您想了解其余的方法和字段,请参阅 JFreeChart API。
XY系列集合
XYSeriesCollection 类具有父类,如 AbstractIntervelDataset、AbstractXYDatset、AbstractSeriesDataset 和 AbstractDataset。此类中的某些方法属于此类的父类。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
XYSeriesCollection() 它构建了一个空数据集。 |
2 |
XYSeriesCollection(XYSeries xyseries) 它构建一个数据集并用单个系列填充它。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
addSeries(XYSeries series) 此方法将一个系列添加到集合并将DatasetChangeEvent发送到所有注册的侦听器。 |
有关其余方法和字段,请参阅 JFreeChart API。
默认 XYZ 数据集
DefaultXYZDataset 类具有父类,如 AbstractIntervelDataset、AbstractXYDatset、AbstractSeriesDataset、AbstractDataset 和 AbstractXYZDataset。此类中的某些方法属于此类的父类。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
DefaultXYZDataset() 它构建了一个空数据集。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
addSeries(java.lang.Comparable seriesKey, double[ ][ ] data ) 此方法将一个系列添加到集合并将DatasetChangeEvent发送到所有注册的侦听器。 |
请参考 JFreeChart API 以了解其余方法和字段。
JFreeCharts 中的时间序列
包是org.jfree.data.time。该包包含用于与时间相关的数据的类和接口。
时间序列
此类以周期值的形式表示一系列数据项,其中周期是 RegularTimePeriod 抽象类的某个实例,例如 Time、Day、Hour、Minute 和 Second 类。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
TimeSeries(java.lang.Comparable name) 它创建新的空系列。 |
2 |
TimeSeries(java.lang.Comarable name, java.lang.String domain, java.lang.Strin range) 它创建不包含数据的新时间序列。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
add(RegularTimePeriod period,double value) 此方法向系列添加新数据项。 |
有关其余方法和字段,请参阅 JFreeChart API。
时间序列集合
这是一个用作时间序列对象集合的类。此类实现了 XYDataset 接口,并扩展了 IntervelXYDataset 接口。这使得收集系列数据对象变得方便。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
TimeSeriesCollection() 它构建一个空数据集,绑定到默认时区。 |
2 |
TimeSeriesCollection(时间序列系列) 它构建了一个包含单个系列(可以添加更多)的数据集,与默认时区相关联。 |
3 |
TimeSeriesCollection(TimeSeries series, java.util.TimeZone zone) 它构建了一个包含单个系列(可以添加更多)的数据集,与特定时区相关联。 |
4 |
TimeSeriesCollection (java.util.TimeZone zone) 它构建了一个与特定时区相关联的空数据集。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
addSeries(时间序列系列) 此方法将一个系列添加到集合并将DatasetChangeEvent发送到所有注册的侦听器。 |
请参考 JFreeChart API 以了解其余方法和字段。
第二
此类代表特定日期中的一秒。这个类是不可变的,这是所有 RegularTimePeriod 子类的要求。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
Second() 它根据系统日期/时间构造一个新的秒。 |
2 |
Second(java.util.Date time) 它从指定的日期/时间和默认时区构造一个新实例。 |
3 |
Second(java.util.Date time, java.util.TimeZone zone, java.util.Locale locale) 它根据提供的时间和时区创建一个新的秒。 |
4 |
Second(int second, int minute, int hour, int day, int month, int year 它创造了新的一秒。 |
5 |
Second(int second, Minute minute) 它构建了一个新的秒。 |
类方法
S.No | 方法和说明 |
---|---|
1 |
getSecond() 它返回一分钟内的第二个。 |
2 |
next() 它返回当前秒之后的第二个。 |
请参考 JFreeChart API 以了解其余方法和字段。
JFreeCharts 中的框架
包是org.jfree.ui。这是属于 JFreeChart 的 JCommons API 的包。它包含用于为预配置图表创建框架的实用程序类。
应用框架
这是用于为简单应用程序创建主框架的基类。该框架侦听窗口关闭事件,并通过关闭 JVM 进行响应。这适用于小型演示应用程序。对于企业应用程序,您需要使用更强大的东西。该类中的主要核心方法取自Component、Container、Window、Frame和Jframe类。
类构造函数
S.No | 构造函数和描述 |
---|---|
1 |
ApplicationFrame(java.lang.String title) 它创建一个带有字符串标题的应用程序框架。 |
此类有助于创建 AWT 帧。这就是我们在本教程示例中使用此类作为超类的原因。
取自父类的方法用于打开框架、关闭框架、更改大小、更改背景或前景色以及侦听器。
炼油厂公用事业
这是与用户界面相关的实用方法的类集合。
类方法
S.No | 方法和说明 |
---|---|
1 |
centerFrameOnScreen(java.awt.Window frame) 它将指定的帧定位在屏幕中间。 |
上述方法在教程示例中使用。有关其余方法和字段,请参阅 JFreeChart API。