8

有人可以提供 JFreeChart 轴类型的简单解释吗?

  1. 首先,我们有基于类层次结构的轴(ValueAxis、CategoryAxis、许多子类)

  2. 我们也有“域轴”与“范围轴”的区别(仅适用于 xy 图?)。尚不完全清楚这些与基于类层次结构的轴的关系。这些不是类,但在 XYPlot 中有 setDomainAxis 和 setRangeAxis 方法。

  3. 视觉上我会在水平轴和垂直轴上思考,我不确定这些与以前的概念有什么关系(“域”总是水平的吗?)。我认为 x 轴是水平的,y 轴是垂直的,但我不确定 XYPlot 是否总是如此。

编辑:我尝试研究 API 文档和开发人员指南。API 文档只是给出了类的层次结构,但不清楚何时以及如何使用它们。开发者指南也没有给出“域轴”和“范围轴”的定义或解释,它只是使用这些术语。我承认这个问题很广泛,因为我在任何地方都找不到这个基本信息。我想有一个大致的了解,但目前我最重要的问题是什么决定了水平/垂直轴上的内容(“域”总是水平的吗?如果不是如何设置?)因为我得到了一些疯狂的结果,我不知道从哪里开始调试。

EDIT2:虽然没有回答,但我同时发现了决定域轴是否水平的因素: PlotOrientation设置。此设置(在组合图的级别上)还决定了 CombinedRangeXYPlot/CombinedDomainXYPlot 是水平还是垂直排列两个图。

4

1 回答 1

10

在 aXYPlot中,您显示的每个系列都代表一个离散函数f[t],其中包含一组离散的 t {t1, t2, ..., tn}及其对应的值{f[t1], f[t2], ..., f [tn]}

  • 该函数的包含 的所有可能值t
  • 函数的范围包含函数的所有可能值f[t]

这里重要的是,函数中可以有多个点在范围轴上具有相同的值,但函数的每个点都必须在域轴上具有唯一的值。例如:香蕉可以与苹果有相同的奖品,但香蕉不能有两个奖品(告诉经纪人!:P)。

通常,水平轴是域轴,但也可以更改。

然后你有一个类Axis,它包含许多可能类型的轴视觉表示(对数/线性/类别/无标签/网格线/蓝色轴线......)。

总而言之:域和范围是数学定义,对显示的数据有一些限制。这些术语用于一种特殊的数据(每个人在基础学校学习的函数的经典形式)。它们与视觉表现无关。因此,绘图的范围和域轴可以定义为 a CategoryAxis、 a NumberAxis、 aLogarithmicAxis或其他内容。

PlotOrientation.VERTICAL编辑(为了完整性):您可以使用/更改绘图的方向(即定义哪个轴是范围轴)PlotOrientation.HORIZONTAL

于 2012-08-10T15:20:25.673 回答