jquery.flot.js简单绘制折线图用法示例

发布时间 - 2026-01-11 00:08:35    点击率:

本文实例讲述了jquery.flot.js简单绘制折线图用法。分享给大家供大家参考,具体如下:

1、完整实例代码:

<!DOCTYPE html>
<html>
  <head>
    <meta charset='utf-8'>
    <title>折线图</title>
    <!--[if lte IE 8]>
      <script language="javascript" type="text/javascript" src="js/excanvas.min.js"></script>
    <![endif]-->
    <script language="javascript" type="text/javascript" src="js/jquery.js"></script>
    <script language="javascript" type="text/javascript" src="js/jquery.flot.js"></script>
    <script type="text/javascript">
      $(function() {
        AlPriceQuery();
      });
      function AlPriceQuery(){
        var result = {
          AvgPrice : [14030, 13980, 14060, 14000, 13930, 14030, 13980, 14060, 14000, 13930],
          Date: ["11-1", "11-2", "11-3", "11-4", "11-5", "11-6", "11-7", "11-8", "11-9", "11-10"],
        }
        var DataArr = [];//y轴数据
        var TickArr = [];//x轴自定义刻度数据
        var PriceArr = [];//价格
        for(var i=0; i<result.Date.length; i++){
          DataArr.push([ i+1, result.AvgPrice[i] ]);
          TickArr.push([ i+1, result.Date[i] ]);
          PriceArr.push(result.AvgPrice[i]);
        }
        var MinPrice = PriceArr.sort(function(a, b){return a - b})[0];//获取最小的铝锭价
        if(MinPrice % 20 == 0){
          MinPrice = MinPrice - 20;
        }
        else{
          MinPrice = MinPrice - 30;
        }
        //数据源
        var DataSet = [{
          "label": "最近 " + result.Date.length + " 日铝锭价",
          "data": DataArr,//折线图数据
        }];
        //配置
        var Options = {
          xaxis: {
            ticks: TickArr,//x轴自定义刻度数据
          },
          yaxis: {
            min: MinPrice,//最小刻度
            tickSize: 20,//递增量
          },
          series: {
            lines: {
              show: true,//显示线段
              lineWidth: 1.5,
            },
            points: {
              show: true,//显示节点
              radius: 3,
            },
            color: "#7AC0DA",
          },
          grid: {
            hoverable: true,//鼠标移动到节点会有效果
            borderWidth: 1,//最外边的边框
            backgroundColor: { colors: ["#ffffff", "#EDF5FF"] },
          },
          legend: {
            noColumns: 0,
            labelBoxBorderColor: "#000000",
            position: "sw",
            backgroundOpacity: 0.1,
          },
          shadowSize: 0,//曲线阴影
        };
        //节点hover事件
        $.fn.UseTooltip = function () {
          var PrePoint = null, PreLabel = null;
          $(this).bind("plothover", function (event, pos, item) {
            if (item) {
              if ((PreLabel != item.series.label) || (PrePoint != item.dataIndex)) {
                PrePoint = item.dataIndex;
                PreLabel = item.series.label;
                $("#tooltip").remove();
                $(this).css({
                  "cursor": "pointer"
                })
                if (item.seriesIndex == 0) {
                  ShowTooltip(
                    item.pageX + 100,
                    item.pageY - 10,
                    "#f7d373",
                    result.Date[item.dataIndex] + " 铝锭价: " + item.series.data[item.dataIndex][1]);
                }
              }
            }
            else {
              PrePoint = null;
              PreLabel = null;
              $(this).css({
                "cursor": "auto"
              });
              $("#tooltip").remove();
            }
          });
        };
        if (PriceArr.length > 0) {
          $.plot($("#placeholder"), DataSet, Options);
          $("#placeholder").UseTooltip();
        }
      }
      //提示框
      function ShowTooltip(x, y, color, contents) {
        $('<div id="tooltip">' + contents + '</div>').css({
          position: 'absolute',
          display: 'none',
          top: y - 40,
          left: x - 120,
          border: '2px solid ' + color,
          padding: '3px',
          'font-size': '9px',
          'border-radius': '5px',
          'background-color': '#fff',
          'font-family': 'Verdana, Arial, Helvetica, Tahoma, sans-serif',
          opacity: 0.9
        }).appendTo("body").fadeIn(200);
      }
    </script>
  </head>
  <body>
    <div id="placeholder" style="width:400px;height:200px;"></div>
  </body>
</html>

2、运行效果图如下:

附:jquery.flot.js插件本站下载地址:
https://www./jiaoben/22143.html

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery常用插件及用法总结》、《jquery中Ajax用法总结》、《jQuery表格(table)操作技巧汇总》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》及《jquery选择器用法总结》

希望本文所述对大家jQuery程序设计有所帮助。


# jquery.flot.js  # 绘制  # 折线图  # JS绘图Flot如何实现动态可刷新曲线图  # JS绘图Flot应用图形绘制异常解决方案  # JS实现简易图片自动轮播  # JS highcharts动态柱状图原理及实现  # js轮播图之旋转木马效果  # 原生js生成图片验证码  # JS绘图Flot如何实现可选显示曲线图功能  # 自定义  # 会有  # 相关内容  # 鼠标  # 下载地址  # 感兴趣  # 给大家  # 更多关于  # 所述  # 程序设计  # 操作技巧  # 选择器  # 讲述了  # sort  # return  # DataSet  # Options  # xaxis  # label 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 实例解析Array和String方法  Laravel如何处理表单验证?(Requests代码示例)  Laravel如何使用Blade组件和插槽?(Component代码示例)  Laravel Session怎么存储_Laravel Session驱动配置详解  HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】  网站制作大概多少钱一个,做一个平台网站大概多少钱?  INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  开心动漫网站制作软件下载,十分开心动画为何停播?  Laravel Fortify是什么,和Jetstream有什么关系  html5如何实现懒加载图片_ intersectionobserver api用法【教程】  Laravel Blade模板引擎语法_Laravel Blade布局继承用法  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  高防服务器租用首荐平台,企业级优惠套餐快速部署  Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  通义万相免费版怎么用_通义万相免费版使用方法详细指南【教程】  使用Dockerfile构建java web环境  如何在阿里云高效完成企业建站全流程?  Laravel中的Facade(门面)到底是什么原理  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  简单实现Android文件上传  Laravel如何升级到最新的版本_Laravel版本升级流程与兼容性处理  为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】  HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法  公司门户网站制作流程,华为官网怎么做?  Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧  如何快速辨别茅台真假?关键步骤解析  如何快速配置高效服务器建站软件?  JS去除重复并统计数量的实现方法  如何有效防御Web建站篡改攻击?  如何快速搭建FTP站点实现文件共享?  python中快速进行多个字符替换的方法小结  三星网站视频制作教程下载,三星w23网页如何全屏?  如何在服务器上三步完成建站并提升流量?  EditPlus中的正则表达式 实战(4)  Laravel如何自定义错误页面(404, 500)?(代码示例)  PHP怎么接收前端传的文件路径_处理文件路径参数接收方法【汇总】  打造顶配客厅影院,这份100寸电视推荐名单请查收  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  大同网页,大同瑞慈医院官网?  Laravel怎么导出Excel文件_Laravel Excel插件使用教程  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  Laravel如何创建自定义Facades?(详细步骤)  javascript中的try catch异常捕获机制用法分析  MySQL查询结果复制到新表的方法(更新、插入)  原生JS实现图片轮播切换效果  Laravel如何使用Eloquent进行子查询  济南网站建设制作公司,室内设计网站一般都有哪些功能?