0
我想在d3js中做這個日曆,但我想使它與json一起工作。使用json的D3日曆視圖
http://bl.ocks.org/mbostock/4063318
我有這樣的JSON:
[{
"category": "business",
"date": "01/10/2011",
"city": "New York"
},
{
"category": "holidays",
"date": "02/10/2011",
"city": "New York"
},
{
"category": "business",
"date": "03/10/2011",
"city": "New York"
},
{
"category": "family",
"date": "03/10/2011",
"city": "New York"
},
{
"category": "holidays",
"date": "01/10/2011",
"city": "San Francisco"
},
{
"category": "family",
"date": "02/10/2011",
"city": "San Francisco"
},
{
"category": "holidays",
"date": "03/10/2011",
"city": "San Francisco"
},
{
"category": "family",
"date": "01/10/2011",
"city": "Austin"
},
{
"category": "holidays",
"date": "02/10/2011",
"city": "Austin"
},
{
"category": "family",
"date": "03/10/2011",
"city": "Austin"
}
]
我更換鏈接的原代碼,這些代碼的。
var color = d3.scale.quantize()
.domain([-.05, .05])
.range(d3.range(11).map(function(d) { return "q" + d + "-11"; }));
通過
var color = d3.scale.category10();
和
d3.csv("dji.csv", function(error, csv) {
var data = d3.nest()
.key(function(d) { return d.Date; })
.rollup(function(d) { return (d[0].Close - d[0].Open)/d[0].Open; })
.map(csv);
rect.filter(function(d) { return d in data; })
.attr("class", function(d) { return "day " + color(data[d]); })
.select("title")
.text(function(d) { return d + ": " + percent(data[d]); });
});
通過
d3.json("data3.json", function(error, data) {
alert(data);
rect.filter(function(d) { return d in data; })
.attr("class", function(d) { return "day " + color(data); })
.select("title")
.text(function(d) { return d + ": " + d.city; });
});
但這並不顯示文本,也沒有油漆的顏色。問題是什麼?