D3只有一个Y轴在右侧绘制折线图

D3只有一个Y轴在右侧绘制折线图

问题描述:

我想绘制一个D3线图,其Y轴在右侧,而不是在左侧。我使用var yAxis = d3.axisRight(y);,但此代码段将我的标签绘制在右侧,而不是将轴移到右侧。我使用D3的版本是v4.9.1。任何帮助表示赞赏D3只有一个Y轴在右侧绘制折线图

在D3,无论你使用轴发电机...

  • axisBottom();
  • axisTop();
  • axisRight();
  • axisLeft();

...轴是总是在原点呈现,也就是说,(0,0)。这是API中的第一行:

无论方向如何,坐标轴总是呈现在原点。

因此,你必须翻译轴。

看看这个演示。所述第一轴线不具有翻译,第二个作用:

var svg = d3.select("svg"); 
 
var scale = d3.scaleLinear().range([10, 140]); 
 
var axis = d3.axisRight(scale); 
 
var g1 = svg.append("g").call(axis); 
 
var g2 = svg.append("g").attr("transform", "translate(270,0)").call(axis);
<script src="https://d3js.org/d3.v4.min.js"></script> 
 
<svg></svg>