激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務(wù)器之家 - 編程語言 - JavaScript - JS繪圖Flot如何實(shí)現(xiàn)動(dòng)態(tài)可刷新曲線圖

JS繪圖Flot如何實(shí)現(xiàn)動(dòng)態(tài)可刷新曲線圖

2021-10-27 15:17cuisuqiang JavaScript

這篇文章主要介紹了JS繪圖Flot如何實(shí)現(xiàn)動(dòng)態(tài)可刷新曲線圖,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

剛剛做的是一個(gè)靜態(tài)的曲線圖,只要設(shè)置數(shù)據(jù),就可以直接顯示。下面來做一個(gè)根據(jù)時(shí)間間隔根據(jù)新數(shù)據(jù)一直變的曲線繪圖示例。

同樣,為了兼容不同瀏覽器,請(qǐng)一定要引入三個(gè)JS文件,否則不保證在IE下的運(yùn)行。

首先來看一下效果!

JS繪圖Flot如何實(shí)現(xiàn)動(dòng)態(tài)可刷新曲線圖

刷新間隔的實(shí)現(xiàn)其實(shí)就是定時(shí)調(diào)用某個(gè)函數(shù),這個(gè)函數(shù)將繪圖對(duì)象里面的數(shù)據(jù)更新即可。

我們來看一下代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Flot動(dòng)態(tài)曲線</title>
<!--[if lte IE 8]><script language="javascript" type="text/javascript" src="excanvas.min.js"></script><![endif]-->
<script language="javascript" type="text/javascript" src="jquery.js"></script>
<script language="javascript" type="text/javascript" src="jquery.flot.js"></script>
<script type="text/javascript">
$(function () {
  // 要繪制的數(shù)據(jù)和數(shù)據(jù)的數(shù)據(jù)點(diǎn)數(shù)
  var data = [], totalPoints = 300;
  // 獲得一些隨機(jī)數(shù)據(jù)
  function getRandomData() {
    if (data.length > 0)
      datadata = data.slice(1);
    while (data.length < totalPoints) {
      var prev = data.length > 0 ? data[data.length - 1] : 50;
      var y = prev + Math.random() * 10 - 5;
      if (y < 0)
        y = 0;
      if (y > 100)
        y = 100;
      data.push(y);
    }
    var res = [];
    for (var i = 0; i < data.length; ++i)
      res.push([i, data[i]])
    return res;
  }
  var updateInterval = 30; // 刷新間隔
  // 更改刷新間隔時(shí)間
  $("#updateInterval").val(updateInterval).change(function () {
    var v = $(this).val();
    if (v && !isNaN(+v)) {
      updateInterval = +v;
      if (updateInterval < 1)
        updateInterval = 1;
      if (updateInterval > 2000)
        updateInterval = 2000;
      $(this).val("" + updateInterval);
    }
  });
  // 設(shè)置繪圖參數(shù)
  var options = {
    series: { shadowSize: 0 }, // 繪制線的陰影,不繪制設(shè)置 0
    yaxis: { min: 0, max: 100 }, // Y 軸的最大值最小值
    xaxis: { show: false } // 不顯示 X 軸
  };
  // 繪圖對(duì)象 參數(shù)為:繪制地點(diǎn)、數(shù)據(jù)、屬性
  var plot = $.plot($("#placeholder"), [ getRandomData() ], options);
  function update() {
    // 要實(shí)現(xiàn)動(dòng)態(tài)繪圖,只需重新設(shè)置其數(shù)據(jù)即可
    plot.setData([ getRandomData() ]); // 設(shè)置數(shù)據(jù)
    // 軸線不改變,不用調(diào)用 plot.setupGrid()
    plot.draw();
    // 設(shè)置調(diào)用
    setTimeout(update, updateInterval);
  }
  // 加載調(diào)用
  update();
});
</script>
</head>
<body>
<div id="placeholder" style="width:600px;height:300px;"></div>
<br><br>
刷新時(shí)間間隔:<input id="updateInterval" type="text" value="" style="text-align: right; width:5em">
</body>
</html>

輸入不同的刷新間隔,繪圖的速度會(huì)響應(yīng)的調(diào)整。以上示例來自官方,少做修改并加以注釋,希望對(duì)一些人有所幫助。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:https://www.iteye.com/blog/cuisuqiang-1462615

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 在线播放视频一区二区 | 久久精品国产亚洲7777小说 | 色综合久久99 | 久久久精品视 | 一级免费在线视频 | 国产精品久久久久久久av三级 | 黄色1级视频 | 亚洲国产中文字幕 | 国产精品毛片va一区二区三区 | 国产免费一级淫片 | 嫩草影院在线观看网站成人 | 国产精品自拍啪啪 | 亚洲一区二区三区高清 | 热久久成人 | 国产精品久久久不卡 | 97人操 | 久久露脸国语精品国产91 | 久久久精品综合 | 欧美人一级淫片a免费播放 久久久久久久久91 国产99久久久久久免费看 | 欧美一级毛片美99毛片 | 久久亚洲国产精品 | www.69色| 曰韩一级片 | 少妇一级淫片免费放4p | 精品一区二区在线视频 | 99久久久免费视频 | 在线a毛片免费视频观看 | 蜜桃传媒视频麻豆第一区免费观看 | 亚洲午夜精选 | 大胆在线日本aⅴ免费视频 美国黄色毛片女人性生活片 | 久久99久久99免费视频 | 欧美城网站地址 | 免费观看黄色影片 | a黄在线观看 | 久久亚洲精品久久国产一区二区 | 欧美a在线| 欧美日本91精品久久久久 | av在线免费网址 | 久久久成人免费视频 | 久久久久久久久久久综合 | 国语自产免费精品视频在 |