1

我正在寻找有关如何使用 JFreeChart 创建类似于 GitHub 打孔卡的绘图的建议。例如

在此处输入图像描述

我猜这是热图或二维直方图的变体。

4

2 回答 2

2

除了这里XYBubbleRenderer建议的,还要考虑一个合适的和的实现,这里举例说明。TableCellRendererIcon

图片

于 2013-10-14T10:13:01.193 回答
2

好的,所以我发现XYBubbleRenderer看起来是一个很好的起点。

  • 创建MatrixSeries行 = 7,列 = 24
  • 相应地填写频率。我发现首先将值标准化为 0...1,然后取平方根(较小的值有更好的可见圆圈),然后乘以 0.5(否则圆圈太大)很有用
  • MatrixSeriesCollection从中创建一个
  • 利用ChartFactory.createBubbleChart
  • 圆形轮廓只能通过plot.getRenderer.setSeriesOutlinePaint(0, new Color(0, 0, 0, 0))
  • 确保两个轴上的整数刻度单位
  • x 轴范围 -0.5 到 23.5,y 轴范围 -0.5 到 6.5(如果使用 0.5 到 7.5 Calendar.DAY_OF_WEEK
  • 自定义NumberTickUnity 轴以使用日期标签而不是数字

结果:

在此处输入图像描述

于 2013-10-14T09:45:21.600 回答