数据模糊
🌐 Blurring data
1D、2D 和 RGBA 图片的 方框模糊 实现;支持小数半径。
🌐 A box blur implementation for 1D, 2D, and RGBA images; supports fractional radius.
blur(data, radius)
js
const numbers = d3.cumsum({length: 1000}, () => Math.random() - 0.5);
d3.blur(numbers, 5); // a smoothed random walk示例 · 来源 · 通过对数组数据应用三次移动平均变换(盒式滤波器)来原地模糊,以快速近似给定半径(非负数)的高斯核。返回给定的数据。
blur2({数据, 宽度, 高度}, rx, ry)
🌐 blur2({data, width, height}, rx, ry)
js
const matrix = {
width: 4,
height: 3,
data: [
1, 0, 0, 0,
0, 0, 0, 0,
0, 0, 0, 1
]
};
d3.blur2(matrix, 1);示例 · 来源 · 通过应用半径为 rx 的水平模糊和半径为 ry 的垂直模糊(默认为 rx),就地模糊给定 width 和 height 的矩阵。矩阵值 data 存储在一个扁平(一维)数组中。如果未指定 height,则根据给定的 width 和 data.length 推断。返回模糊后的矩阵 {data, width, height}。
blurImage(imageData, rx, ry)
js
const imageData = context.getImageData(0, 0, width, height);
d3.blurImage(imageData, 5);示例 · 来源 · 就地模糊给定的 ImageData,通过应用半径为 rx 的水平模糊和半径为 ry 的垂直模糊(默认为 rx)独立地模糊每个 RGBA 图层。返回模糊后的 ImageData。