svg性能低?能展现的点比较少?真的是这样吗?
很多人会说用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吧
svg性能低?能展现的点比较少?真的是这样吗?相关推荐
- 查询慢 跑批慢 性能低怎么办? | 润乾高性能计算专家
完整资料下载: 查询慢.跑批慢.性能低怎么办?| 润乾高性能计算专家
- 为什么7层负载均衡压测性能低
为什么80%的码农都做不了架构师?>>> 为什么7层负载均衡压测性能低 7层性能会比4层性能低 负 载均衡集群采用LVS和Tengine实现,其中4层监听经过LVS后直接到达后 ...
- IBM WebSphere Portal宕机或性能低常见问题分析 及解决措施
使用IBM WebSphere Portal构建企业门户系统是用户比较睿智的一个选择,但是由于Portal产品比较复杂,宕机或性能低也通常是用户较为头疼的问题.经常有客户门户上线后出现页面空白或无法访 ...
- win764位8G内存下固态硬盘性能低,4k随机读写慢如何解决
博客分类: 问题: win7-64位8G内存下固态硬盘性能低,4k随机读写慢,as ssd benchmar 4k随机读写都不超过10M/s,最终得分只有100多分 解决答案竟然是通过百度搜索 ...
- 面向对象原则:高内聚、低耦合。多聚合、少继承
面向对象原则:高内聚.低耦合.多聚合.少继承 要点概括 [高内聚.低耦合] 内聚:每个模块尽可能独立完成自己的功能,不依赖于模块外部的代码. 耦合:模块与模块之间接口的复杂程度,模块之间联系越复杂耦合 ...
- java计算何时赶超_网上说 Java 的性能已经达到甚至超过 C++,是真的吗?
求一个完成中值滤波的纯JAVA代码.我手里正好有一个C++的中值滤波代码,想对比下两者究竟差距多大. @圆胖肿 可否写一个JAVA程序来佐证下你的观点呢? 我这面的C++代码,对一张5184*3456 ...
- svg适配低版本android,SVG-Android开源库——SVG图片兼容及性能优化解决方案
SVG矢量图在图片表现力方面远远优于PNG位图,同时在可维护性和修改性方面也比位图要方便很多.尽管Android在5.0版本就引入了SVG图片的解决方案:Vector.然而,兼容性和性能方面却是差强人 ...
- 乐观锁 CAS 悲观锁synchronized()性能低因为涉及操作系统内核与用户模式的切换
但是Synchronized虽然确保了线程的安全,但是在性能上却不是最优的,Synchronized关键字会让没有得到锁资源的线程进入BLOCKED状态,而后在争夺到锁资源后恢复为RUNNABLE状态 ...
- EF性能优化-有人说EF性能低,我想说:EF确实不如ADO.NET
我们使用EF和在很大程度提高了开发速度,不过随之带来的是很多性能低下的写法和生成不太高效的sql. 虽然我们可以使用SQL Server Profiler来监控执行的sql,不过个人觉得实属麻烦,每次 ...
最新文章
- Auto Machine Learning 自动化机器学习笔记
- 无人驾驶的落地,是一场AI与人的博弈
- Nutch爬取Ajax请求的动态网页
- ARX中的Purge
- Spring的静态代理和动态代理
- python exit 0_python中 os._exit() 和 sys.exit(), exit(0)的用法和区别
- 你们要的印度布线,这是一种极端的牛X
- c语言如何查找字符串指定字符
- 4键电子手表说明书_数字S1系统4.3寸门口主机操作说明书
- JSON中的多行字符串
- python上传文件
- 短文本相似度计算-simHash从原理到实现
- kali安装网卡驱动
- pikachu~~~验证码绕过(on client on server)
- 华为rh2288v2服务器系统,扩展能力强 华为RH2288H V2服务器解析
- Matlab样条工具箱(Spline ToolBox)与曲线拟合
- 运行Intel realsense L515相机
- 編程之美﹣電梯調度算法
- Python量化分析(1)——Tushare的使用介绍
- VUE+js高德地图2.0API两幅地图联动同步缩放
热门文章
- ARKit 1.0☀️ 二、生成首个IOS App
- JSP页面forEach使用
- 基于FPGA(basys3)的双人对战人机对战五子棋(vivado)课程设计项目
- 你知道为什么不用XFP光模块了吗?
- 分享一款绘制时序图的实用小工具
- html设置盒子水平垂直居中,盒子水平垂直居中10种方法
- 通过Date函数制作倒计时程序,计算日期相差时间!
- 1.MIL与VC2010编程环境设置
- 正则表达式说明(转)
- android 代码打开usb调试,Android手机USB调试在哪?安卓手机如何打开USB调试模式?...