d3 Array 分類中包含的子項目
1. d3.min( )、d3.max( ) ⇒ 取最小值/最大值
程式碼
//JS
// d3.min、d3.max Number
const numberData = [7, 5, 1, 13, 55, 2, 64, null];
const minNumber = d3.min(numberData);
const maxNumber = d3.max(numberData);
console.log("min max number", minNumber, maxNumber); // 1, 64
// d3.min、d3.max String
const stringData = ["狗", "貓", "羊", "豬"];
const minString = d3.min(stringData);
const maxString = d3.max(stringData);
console.log("min max stirng", minString, maxString); // '狗' '貓'
2. d3.extent( ) ⇒ 同時返回最大與最小值
程式碼
//JS
const extentData = [7, 5, 1, 13, 55, 2, 64, null];
const extent = d3.extent(extentData);
console.log("extent", extent); // [1, 64]
3. d3.sum( ) ⇒ 把資料加總
程式碼
//JS
// 數字可以加總
const sumNumberData = [7, 5, 1, 13, 55, 2, 64, null];
const sum = d3.sum(sumNumberData);
console.log("sum number", sum); // 147
// 字串無法加總
const sumStringData = ["狗", "貓", "羊", "豬"];
const sumString = d3.sum(sumStringData);
console.log("sum string", sumString); // 0
4. d3.every( ) ⇒ 遍歷資料陣列,確認陣列內的值是否全都符合條件
程式碼
//JS
const everData = [7, 5, 1, 13, 55, 2, 64];
const isAllIntegersBiggerThanTwenty = d3.every(everData, (d) => d > 20);
console.log("every >20", isAllIntegersBiggerThanTwenty); // false
5. d3.some( ) ⇒ 遍歷資料陣列,確認陣列內的任一資料是否符合條件
程式碼
//JS
const someData = [7, 5, 1, 13, 55, 2, 64];
const isAllDataBiggerThanTen = d3.some(someData, (d) => d > 10);
console.log("some >10", isAllDataBiggerThanTen); // true
6. d3.filter( ) ⇒ 遍歷資料陣列,返還陣列內所有符合條件的資料
程式碼
//JS
const filterData = [7, 5, 1, 13, 55, 2, 64];
const filter = d3.filter(filterData, (d) => d > 10);
console.log("filter", filter); // [13, 55, 64]
7. d3.sort( ) ⇒ 按照條件排序資料陣列
程式碼
//JS
const sortData = [7, 5, 1, 13, 55, 2, 64, null];
const sort = d3.sort(sortData);
console.log("sort", sort); // [1, 2, 5, 7, 13, 55, 64, null]