c3图表工具提示不动

时间:2016-08-20 00:44:36

标签: javascript d3.js charts c3.js

我一直试图让图形工作,所有数据似乎都是图形,但是工具提示并没有从最右边移动。这当然是个问题,因为我无法将鼠标悬停在特定点上以查看数据。

以下是JS小提琴示例:https://jsfiddle.net/kp7eyf8o/6/

注意:由于某种原因,堆栈溢出JSfiddle给我一个错误,但URL应该显示我的问题。

var chart = c3.generate({
  bindto: '#test',
  data: {
    x: 'x',
    columns: [
      ['x', '2016-01-01', '2016-02-02', '2016-03-03', '2016-04-04', '2016-05-05', '2016-06-06', '2016-07-07', '2016-08-08', '2016-09-09', '2016-10-10', '2016-11-11', '2016-12-12'],
      ['2016 Actual', 12873666.64, 15976835.94, 19232540.28, 23649495.4, 26338636.36, 29496799.84, 43801703.66, 4263924.64, 5788580.3, ],
      ['2016 Projected', 3916752.11, 4626643.23, 5146264.25, 6148854.32, 6640724.57, 7409783.48, 8263054.46, 8488001.54, 8837809.1, 9068047.68, 9402019.15, 9513505.72, ],
      ['2015 Actual', 3256870.0, 3825580.0, 4394290.0, 5550000.0, 6044000.0, 7100000.0, 7700000.0, 8154000.0, 8860000.0, 9200000.0, 9500000.0, 9600328.45, ]
    ],
    colors: {
      '2016 Actual': '#2cd554',
      '2016 Projected': '#1bc4fc',
      '2015 Actual': '#fdaf5a'
    }
  },
  axis: {
    x: {
      type: 'timeseries',
      tick: {
        culling: false,
        format: '%b'
      }
    },
    y: {
      tick: {
        format: d3.format("$,.2f")
      }
    }
  },
});
<link href="https://rawgit.com/masayuki0812/c3/master/c3.css" rel="stylesheet" />
<script src="https://rawgit.com/masayuki0812/c3/master/c3.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.3.12/d3.min.js"></script>


<div id="test"></div>

我看到有人提到使用'xs:{x .... y ....}但是我无法使用它。我需要X轴是日期(现在硬编码,但在我的应用程序中我使用与我循环的一个数据集关联的日期),Y轴为$。

1 个答案:

答案 0 :(得分:1)

当将不同长度的数据数组输入到列中时,C3工具提示似乎会中断。您可以尝试将空值放入较短的数组中,以便工具提示可以正常移动。 JS小提琴:https://jsfiddle.net/stancheta/7zgny2yd/

['2016 Actual', 12873666.64, 15976835.94, 19232540.28, 23649495.4, 26338636.36, 29496799.84, 43801703.66, 4263924.64, 5788580.3, null, null, null],