gpt4 book ai didi

javascript - 使用 JavaScript/D3 在图表上设置间距条

转载 作者:行者123 更新时间:2023-11-30 16:14:24 24 4
gpt4 key购买 nike

我正在使用 D3 和以 JSON 格式存储的数据来绘制条形图。但是,所有条形图似乎都在图表的左侧,因此我只能看到数据集中最高值的条形图。

以下是我的 JavaScript 代码的相关部分:

var x = d3.time.scale()
.range([0, width]);

var xAxis = d3.svg.axis()
.scale(x)
.orient("bottom")

var parseDate = d3.time.format("%Y-%m-%d").parse;

d3.json("performance/api", function (data) {

data.forEach(function(d) {
d.date = parseDate(d.date);
d.percent_return = +d.percent_return;
});

x.domain(data.map(function(d) { return d.date; }));
y.domain([0, d3.max(data, function(d) { return d.percent_return; })]);

svg.append("g")
.attr("class", "x axis")
.attr("transform", "translate(0," + height + ")")
.call(xAxis);

svg.selectAll(".bar")
.data(data)
.enter().append("rect")
.attr("class", "bar")
.attr("x", function(d) { return x(d.date); })
.attr("width", width/data.length)
.attr("y", function(d) { return y(d.percent_return); })
.attr("height", function(d) { return height - y(d.percent_return); });

此外,这是我的一个数据条目的示例:

[{"percent_return": "12.00", "date": "2016-01-02T01:43:52Z"},

关于如何正确解析日期并将其绘制在 x 轴上的任何想法?谢谢。

最佳答案

您错误地解析了日期:

代替

var parseDate = d3.time.format("%Y-%m-%d").parse;

使用

parseDate = d3.time.format("%Y-%m-%dT%H:%M:%SZ").parse

阅读here d3 中的日期格式

关于javascript - 使用 JavaScript/D3 在图表上设置间距条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35738197/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com