HTML Canvas 绘制实时动态折线图

简介: HTML Canvas 绘制实时动态折线图

  本文使用HTML的Canvas元素绘制实时动态折线图。


   参考于这篇博客HTML5 Canvas动画折线图 可动态添加节点


自定义Start、Stop按钮和画板canvas。

<button id="start" style="text-align:center;">Start</button>
<button id="stop" style="text-align:center;">Stop</button>
<canvas id="canvas"></canvas>

定义start、stop、refresh的相关实现函数(注意这里需要引用相关库jquery-1.12.4.min.js和script.js)。1000为刷新间隔时间为1s,可自行修改刷新速度。这里有个知识点,js随机生成保留两位小数在100范围内的y_value值来更新折线。

<script>
    var interval;
    var x_value=0;
    $(function(){
            $("#start").click(function(){
                interval = setInterval(refresh,1000);
            });
        });
    function refresh(){
            var y_value = Math.round(Math.random()*100*100)/100;
            append(x_value,y_value);
            x_value = x_value + 1;
        }
    $(function(){
            $("#stop").click(function(){
                clearInterval(interval);
            });
        });
  </script>


为了方便扩展,更改了原作者里面的append函数,用户可将x_value和y_value更改为自己需要刷新的数据。并将绘制画布更改为自己添加的canvas,添加更新Y轴坐标值。更改部分分别如下:

function append(x_value,y_value) {
  chart.append([
    { label: x_value, value: y_value }
  ]);
}
  var canvas = document.getElementById("canvas");
  var context = canvas.getContext( '2d' );
context.fillText( point.label, point.x - ( wordWidth / 2 ), height - 30 );
context.fillText( point.value, 18, point.y);

执行Start可实时动态绘制折线图,执行Stop即可停止刷新。运行结果如下图所示:



去.png

相关文章
|
2月前
|
前端开发 JavaScript API
2024 新年HTML5+Canvas制作3D烟花特效(附源码)
2024 新年HTML5+Canvas制作3D烟花特效(附源码)
54 0
|
7月前
|
移动开发 前端开发 Shell
《HTML5 Canvas核心技术 图形、动画与游戏开发》 读书笔记
《HTML5 Canvas核心技术 图形、动画与游戏开发》 读书笔记
|
2月前
|
存储 移动开发 前端开发
HTML新特性【HTML5内联SVG、SVG_矩形、SVG 与 Canvas两者间的区别 、HTML5_MathML 】(三)-全面详解(学习总结---从入门到深化)
HTML新特性【HTML5内联SVG、SVG_矩形、SVG 与 Canvas两者间的区别 、HTML5_MathML 】(三)-全面详解(学习总结---从入门到深化)
48 0
|
1月前
酷炫的粒子动态表白HTML源码
酷炫的粒子动态表白HTML源码,自己自定义文字,动态组合文字,进行表白,喜欢的朋友可以下载使用,很不错的表白HTML代码
21 0
酷炫的粒子动态表白HTML源码
|
1月前
|
前端开发 JavaScript 容器
编程笔记 html5&css&js 032 HTML Canvas
编程笔记 html5&css&js 032 HTML Canvas
|
6月前
|
编译器
html动态爱心代码【三】(附源码)
html动态爱心代码【三】(附源码)
88 0
|
6月前
html动态爱心代码【一】(附源码)
html动态爱心代码【一】(附源码)
923 0
|
6月前
html动态爱心代码【附源码】
html动态爱心代码【附源码】
128 0
|
2月前
|
前端开发 JavaScript UED
动态伸缩搜索框:HTML, CSS, JavaScript的完美结合
动态伸缩搜索框:HTML, CSS, JavaScript的完美结合
100 1
|
3月前
|
移动开发 前端开发 JavaScript
html5 Canvas 绘制基本图形 从直线图形到使用路径 - 直线、矩形、路径、多边形、复杂组合图形
html5 Canvas 绘制基本图形 从直线图形到使用路径 - 直线、矩形、路径、多边形、复杂组合图形
127 0
html5 Canvas 绘制基本图形 从直线图形到使用路径 - 直线、矩形、路径、多边形、复杂组合图形