Mam .json z 3 kolumnami, gdzie jeden z nich to "Rok". Kolumna zawiera tylko lata. Brak dat !.D3 usuń ograniczniki przecinków dla tysięcy
Kiedy jestem na wykresie na osi "x", lata wychodzą z ogranicznikiem przecinka dla tysięcy.
Więc w .json data jest ten format: „Rok”: 1990 i na „x” oś wyjdzie jak ten 1,990
I zostały próbuje dowiedzieć się, jak analizować rok ale do tej pory nie mam szczęścia. Próbowałem następujące:
var parseDate = d3.time.format("%y").parse
var x = d3.time.scale()
.range([0, width]);
//further down
d3.json("waterData.json", function(error, json) {
// Attach Data
var data = json.data;
// Select Data for X and Y
var axis1 = 'Year';
var axis2 = 'Ratio'
// Convert String into Numbers
data.forEach(function(d) {
///axis1 = parseDate(axis1);
d[axis1] = +d[axis1]
d[axis2] = +d[axis2]
});
x.domain(d3.extent(data, function(d) { return d[axis1]; }));
y.domain(d3.extent(data, function(d) { return d[axis2]; }));
svg.append("g")
.attr("class", "x axis")
.attr("transform", "translate(0," + (height+10) + ")")
.call(xAxis)
.append("text")
.attr("class", "label")
.attr("x", width)
.attr("y", -40)
.text(axis1)
svg.append("g")
.attr("class", "y axis")
.attr("transform", "translate("+ -10 + "," + 0 + ")")
.call(yAxis)
.append("text")
.attr("class", "label")
.attr("x", 10)
.style("fill", "#666")
.style("text-anchor", "start")
.text(axis2)
Wszelkie sugestie, jak pozbyć się ogranicznika przecinka. Lub dowiedzieć się, jak przeanalizować datę.
Wygląda na to, że nie jesteśmy w rzeczywistości za pomocą funkcji 'parseDate'. Spróbuj "d [axis1] = parseDate (d [axis1])". –
Używam tego lub przynajmniej próbuję 5-tej linii od dołu. Dziękuję za sugestię, ale to nie działa. – Georgi
Używasz go w niewłaściwym miejscu. Czy to twój pełny kod? –