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>