D3.js d3js错误或x轴中没有文本

D3.js d3js错误或x轴中没有文本,d3.js,D3.js,我的数据如下: [{“月”:1,“年”:2013,“sumValue”:60599.0,“countRecords”:2976,“日期”:“2013-01-01T00:00:00”},{“月”:2,“年”:2013,“sumValue”:52922.0,“countRecords”:2688,“日期”:“2013-02-01T00:00:00”},{“月”:3,“年”:2013,“sumValue”:62585.0,“countRecords”:3072,“日期”:“2013-03-01T00:

我的数据如下: [{“月”:1,“年”:2013,“sumValue”:60599.0,“countRecords”:2976,“日期”:“2013-01-01T00:00:00”},{“月”:2,“年”:2013,“sumValue”:52922.0,“countRecords”:2688,“日期”:“2013-02-01T00:00:00”},{“月”:3,“年”:2013,“sumValue”:62585.0,“countRecords”:3072,“日期”:“2013-03-01T00:00:00”}]

代码片段

var x = d3.scale.linear().range([0, width + margin.left + margin.right]);
var x_extent = d3.extent(data, function (d) { return d.month });
x.domain(x_extent);
var xAxis = d3.svg.axis().scale(x).orient("bottom");
svgGroup.append("g").attr("class", "x axis").attr("transform", "translate(0," + height + ")") .call(xAxis);
我没有机会获得x轴上的值1到12(下一步应该是显示月份的名称-但是如果我甚至没有获得值,我该怎么做) 将显示的内容(愚蠢)如下: 0.0.1 0.2

如果我尝试这个(在另一篇文章中提到):

没有显示任何内容

我想我缺少一些基本的理解。有人能帮我解决这个问题吗

提前谢谢

©a-x-i

要使用时间刻度(这是您的第二个代码片段所建议的),您必须实例化刻度,因此:

var x = d3.time.scale().range([0, width + margin.left + margin.right]);
var x_extent = d3.extent(data, function (d) { return new Date(d.date); });
x.domain(x_extent);

请注意,在这种情况下,您必须先将
.date
字符串转换为
date
s(如
d3.extent
所示),然后再将其传递到磅秤。

谢谢您的回复,但这对我没有帮助。现在只有“01 AM”显示在左角。没有别的了。我真的有点困惑……你在帖子中提到的
.ticks(..).tickFormat(..)
行中添加了吗?你能发布完整的代码吗,最好是在jsfiddle中?很抱歉回复太晚了。你的解决方案很好。现在它起作用了。我的数据(上面提到的只是其中的一部分)已损坏。
var x = d3.time.scale().range([0, width + margin.left + margin.right]);
var x_extent = d3.extent(data, function (d) { return new Date(d.date); });
x.domain(x_extent);