java - JFreeChart 域/范围轴定义

标签 java plot jfreechart axes

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

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

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

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

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

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

最佳答案

XYPlot 中,您显示的每个系列都代表一个离散函数 f[t]具有一组离散的 t 的 {t1, t2, ..., tn} 及其相应的值 {f[t1], f[t2], ..., f[tn] .

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

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

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

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

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

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

关于java - JFreeChart 域/范围轴定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11902731/

相关文章:

带有参数的 VBA 脚本的 Java Runtime Exec

java - 怀疑int变量的范围

matlab - 如何执行优化的图形解决方案?

java - 显示鼠标附近的鼠标坐标作为鼠标移动的提示

java - JFreeChart 中的 ohlc 图表

java - 黑莓持久对象

java - "500 Error: Failed to establish a backside connection"- Bluemix Selenium 测试

python - 如何完全去除散点图周围的空白

ios - 核心图中的两个图可以同时起作用

java - 如何在 JFreeChart 中用鼠标滚轮旋转饼图?