[英]How to read multiple column CSV by changing headers into categories and all values into one column?
我想在d3.js中創建一個多折線圖,數據在csv中,組織如下:
¦Date ¦ Cat A¦ Cat B¦ Cat C¦
¦:---------¦:----:¦:----:¦-----:¦
¦2019-12-01¦2 ¦6 ¦9 ¦
¦2018-11-02¦4 ¦4 ¦20 ¦
如何讀取要排列成三列的數據:
¦Date ¦ Category¦ value ¦
¦:---------¦:-------:¦------:¦
¦2019-12-01¦CAT A ¦2 ¦
¦2018-11-02¦CAT A ¦4 ¦
¦2019-12-01¦CAT B ¦6 ¦
¦2018-11-02¦CAT B ¦9 ¦
請注意,我想忽略其中一列(CAT C)
通常在 D3 中,導入扁平數據,然后相應地對其進行分組或嵌套。 這意味着(據我所知)進行反向操作的工具並不是那么自然。 在這種情況下,使用 vanilla Javascript 可能簡單易讀:
const data = [
{ Date: '2019-12-01', 'A' : 2, 'B' : 6, 'C' : 9 },
{ Date: '2018-11-02', 'A' : 4, 'B' : 4, 'C' : 20 }
];
console.log(data)
result = [];
data.forEach(row => {
let a = (({ Date, A, B, C }) => ({ Date, A}))(row);
result.push(a)
let b = (({ Date, A, B, C }) => ({ Date, B}))(row);
result.push(b)
});
console.log(result);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.