很多人会说用d3画svg有局限,d3本来就不适合大数据可视化
说出这些话的人,首先要说的就是 他不懂大数据 因为大数据的精髓不在于数据量,而在于数据分析
也就是说可视化的目的是为了便于对数据的分析
那么问题来了 首先我们看一下这幅图
95之前的朋友 肯定记得 老电视机分辨率低,如果距离很近的话 就会看到这个景象 我们所说的像素也是这样
现如今的电视或者电脑的分辨率都很高 即使很近,恐怕也看不到这种现象了
有人说 拿d3画1万+的点就会卡爆任何浏览器
那么我们来算一下 1万+个点是什么概念 是否有人真的会需要看1万+个点来分析数据呢
电脑显示屏的分辨率是1920*1080 乘法的结果是 2073600个点
在这样的分辨率下面 我们人眼能看清楚的大约是长宽10像素左右 那么长宽10像素 也就是总共有100像素喽
也就是100个像素格子 我们才能舒服的看清楚我们画的点 鼠标才能准确轻易的移到上面
2073600/100=20736 也就是这种人眼刚刚能舒服的看到的点 画的满满的也就只能显示2万多个点而已
实际上我们的项目因为有导航栏,菜单栏,边栏等原因 正常的显示区域也就一般而已
也就是说 将我们的显示区域画满 也就只有1万多个点
不过 你画的满满的看个毛是吧
肯定显示区域很多地方其实是空着的,所以一般最多也就1000多个circle而已 事实上这种情况也是很少的
也就是正常的人,经过合理的数据过滤 剩余的点在1000以下比较合理
也就是说有些人所说的d3用svg做可视化 效率低的问题是扯淡的 因为真的如果显示那么多的点 即使你是重叠起来的 因为对于数据分析没有用 那他也是失败的
所以说大胆的用d3吧