D3.js 无法读取d3中的in/format日期数据
我希望能够读入下表中的数据,以便使用d3绘制散点图。 有人能告诉我如何格式化“日期”数据,以便在x轴上绘制每日数据吗。下面是我的代码片段 数据: 代码: 非常感谢,,D3.js 无法读取d3中的in/format日期数据,d3.js,D3.js,我希望能够读入下表中的数据,以便使用d3绘制散点图。 有人能告诉我如何格式化“日期”数据,以便在x轴上绘制每日数据吗。下面是我的代码片段 数据: 代码: 非常感谢,, 凯瑟琳转换CSV数据:const plotData=data.map({date,cases}=>({date:new date(date,cases}));Hi@MichaelRovinsky-谢谢你的评论。如果我理解你的回答,你建议格式化CSV输入?我(有限)的理解是我需要使用不同的函数来缩放线性()以及日期列(而不是csv文
凯瑟琳转换CSV数据:
const plotData=data.map({date,cases}=>({date:new date(date,cases}));
Hi@MichaelRovinsky-谢谢你的评论。如果我理解你的回答,你建议格式化CSV输入?我(有限)的理解是我需要使用不同的函数来缩放线性()以及日期列(而不是csv文件)需要在读取.csv文件后重新格式化。是的,您需要将csv数据中的date
字段从string
转换为date
,并对X轴使用scaleTime谢谢@MichaelRovinsky。我是这方面的新手,您能给我指出一个可以破解的代码片段/示例吗?
date cases
30/04/2020 4956
29/04/2020 5420
28/04/2020 4719
27/04/2020 4699
26/04/2020 3471
25/04/2020 3745
d3.csv("data.csv", function(data) {
// List of groups (input data has one group per column)
var allGroup = ["cases"]
// add the options to the button
d3.select("#selectButton")
.selectAll('myOptions')
.data(allGroup)
.enter()
.append('option')
.text(function (d) { return d; }) // text shows in the menu
.attr("value", function (d) { return d; }) // corresponding value returned by the button
var x = d3.scaleLinear()
.domain([0,10])
.range([ 0, width ]);
svg.append("g")
.attr("transform", "translate(0," + height + ")")
.call(d3.axisBottom(x));
// Add Y axis
var y = d3.scaleLinear()
.domain( [0,250000])
.range([ height, 0 ]);
svg.append("g")
.call(d3.axisLeft(y));
// Initialize line with 'cases'
var line = svg
.append('g')
.append("path")
.datum(data)
.attr("d", d3.line()
.x(function(d) { return x(+d.time) })
.y(function(d) { return y(+d.cases) })
)
.attr("stroke", "black")
.style("stroke-width", 4)
.style("fill", "none")