如何操纵svg图表的轴?

时间:2017-02-01 07:07:41

标签: d3.js svg epoch.js

我正在使用d3.js和epoch绘制散点图。成为图表中圆圈的值基于日志值,这使得我的两个轴都低于零。

onCreate

我想保持圆圈的位置,但操纵轴,以便:

 var chart = $('#scatterchart').epoch({ type: 'scatter', data: scatterData, axes: ['bottom', 'left'], ticks: { right: 4, bottom: 4}, domain: [-1.4, 2], range: [-2,4], margins: { top: 10, right: 80, bottom: 60, left: 80 }, });

任何有关如何执行此操作的建议?

2 个答案:

答案 0 :(得分:0)

我对epoch.js没有经验,我也不知道你是否可以调整它创建的轴。 但是您可以尝试在将数据提供给散点图生成器之前对其进行转换。

如果scatterData是一个数组,您可以使用array.map():

newData = scatterData.map(function(d){return someTransformFuntion(d);});

相应地调整轴的输入域(实际上是你的比例)。

答案 1 :(得分:-1)

我没有时代经验。

但是假设它在d3js之上工作,你需要做的就是改变你的两个音阶的范围。

当您可视化数据时,您可以使用域(用于数据)和范围(屏幕上的像素)。因此,要支持负值,您需要调整域以支持[-2,4](对于y轴示例)。

作为一些关于domainsnegative values

的阅读奖励