【发布时间】:2019-03-12 21:23:35
【问题描述】:
在创建 D3 面积图时,我注意到我的 X 轴刻度线略微向右移动:
对于我的代码,我生成 xAxis 如下:
const x = d3.scaleTime()
.domain(d3.extent(data, d => Date.parse(d.date)))
.range([margin.left, width - margin.right]);
const xAxis = g => g
.attr("transform", `translate(0,${height - margin.bottom})`)
.call(d3
.axisBottom(x)
.tickValues(data.map(d => {
return timeParse(d.date);
}))
.tickFormat(timeFormat)
.tickSizeOuter(0)
)
svg.append("g")
.call(xAxis);
不确定我做错了什么导致刻度线略微向右移动。如果我不包括.tickSizeOuter(0) 部分,则开始和结束刻度线看起来在正常位置,但数据点刻度线仍然关闭。
如何将这些调整到正确的位置?
编辑
这是我的这张图表的数据:
data = [
{date: "2019-02-01", value: 100},
{date: "2019-03-01", value: 1}]
]
这是timeParse var:
var timeParse = d3.timeParse("%Y-%m-%d");
【问题讨论】:
标签: javascript d3.js charts