<!DOCTYPE html>
<!--[if IE 8]>          <html class="ie ie8"> <![endif]-->
<!--[if IE 9]>          <html class="ie ie9"> <![endif]-->
<!--[if gt IE 9]><!-->  <html> <!--<![endif]-->
    <head>
        <meta charset="utf-8" />
        <title>数据与分析领域的10大技术趋势 - 行业动态 - 新闻中心 - 数据,分析,技术,领域,提供,AI,决策,趋势,领导者</title>
        <meta name="keywords" content="数据,分析,技术,领域,提供,AI,决策,趋势,领导者" />
        <meta name="description" content="一直以来，数据分析领域都是企业领导者所看重的。近日，Gartner发布了关于数据与分析领域的10大技术趋势，各大企业领导者不妨参考看看。" />
        <meta name="Author" content="" />
        <!-- <meta name="viewport" content="width=device-width, maximum-scale=1, initial-scale=1, user-scalable=0" /> -->
        <link rel="canonical" href="/col_hydt/202108/A87AC82194A58F98661AA9D693D4065C.htm"/>
        <!--[if IE]><meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'><![endif]-->
        <link href="../../hdui/app/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
        <link href="../../hdui/app/css/hdcore.min.css" rel="stylesheet" type="text/css" />
        <!-- SWIPER SLIDER -->
        <link href="../../hdui/app/plugins/slider.swiper/dist/css/swiper.min.css" rel="stylesheet" type="text/css" />
        <link href="../../hdimg/bas/css/hdcss.css" rel="stylesheet" type="text/css" />
        <link href="../../hdimg/bas/css/hdcss2.css" rel="stylesheet" type="text/css" />
        <link href="../../hdimg/bas/images_col/mycss.css" rel="stylesheet" type="text/css" />
        <link href="../../hdimg/bas/images_col/mycssmbi.css" rel="stylesheet" type="text/css" />
        <script>
                    checkBrowser("/hdmbi/bas/col_detail.php?id=148");
            function checkBrowser(url) {
                var ua = navigator.userAgent;
                if (ua.match(/(iphone|Android|midp-2|opera mini|ucweb|windows ce|symbianos|blackberry|nokia|palm|cellphone)/i)) {
                    window.location.href = url;
                    }
            }
                    </script>
    </head>
    <body class="smoothscroll enable-animation" style="background: #f8f8f8;">
<div style="width: 100%; position: absolute; left: 0; top: 0; z-index: 2; padding: 0 50px;">
    
<div class="Headertop">
    <h1 class="logo"><a href="/"><img alt="甘肃柏隆电子商务科技有限责任公司" src="../../hdupf/gimg/202001/20200107175335_758355.png" title="" style="border:0; width:180px; height:60px"></a></h1>
    <div class="naver">
        <div class="search">
            <a href="../../s/all/"><img src="../../hdimg/bas/images_col/sch.png"/></a>
        </div>
        <ul>
            <li><a href="/">首页</a></li>
            <li class="navMenu-item navMenu-item-1"><a class="navMenu-title " href="/col_gsgk/index" target="_blank">关于柏隆</a></li><li class="navMenu-item navMenu-item-2"><a class="navMenu-title selected" href="/col_qydt/index" target="_blank">新闻中心</a><ul><li><a href="/col_qydt/index/">企业动态</a></li><li><a href="/col_hydt/index/">行业动态</a></li></ul></li><li class="navMenu-item navMenu-item-3"><a class="navMenu-title " href="/hdapp/bas/col_up.php?sn=ywfw" target="_blank">业务领域</a><ul><li><a href="/col_kjcsmf/index/">鲲迹超数魔方</a></li><li><a href="/col_kjzspt/index/">鲲迹智算平台</a></li><li><a href="/col_idctgyw/index/">IDC托管业务</a></li><li><a href="/col_swcyld/index/">算网产业落地</a></li><li><a href="/col_qklyw/index/">云服务</a></li><li><a href="/col_qghlwjrfw/index/">全国互联网接入服务</a></li><li><a href="/col_cdnznccyw/index/">CDN智能存储业务</a></li><li><a href="/col_ywstxz/index/">业务生态协作</a></li></ul></li><li class="navMenu-item navMenu-item-4"><a class="navMenu-title " href="/col_hxjzg/index" target="_blank">企业文化</a></li><li class="navMenu-item navMenu-item-5"><a class="navMenu-title " href="/col_zpxx/index" target="_blank">人才招聘</a><ul><li><a href="/col_zpxx/index/">招聘信息</a></li><li><a href="/col_rcln/index/">人才理念</a></li></ul></li><li class="navMenu-item navMenu-item-6"><a class="navMenu-title " href="/col_lxfs1/index" target="_blank">联系方式</a></li>
        </ul>
        
    </div>
</div>
</div>
<div style="position: fixed; width: 100%; height: 1065px; top:0; z-index: 0;">
    <div style="height: 1065px; width: 100%; position: relative; overflow: hidden; background: #121212;" id="img_wrapper">
        <div style="height: 1065px;margin-left: -960px; left: 50%; width: 1920px;z-index: 1; position: absolute;">
            
        </div>
        <div style="height: 1065px;margin-left: -960px; left: 50%; width: 1920px;z-index: 2; position: absolute;">
            <div class="controls">
                <div class="functions"></div>
                <div class="rotate"></div>
            </div>
            <canvas width="2560" height="1000" style="min-width: 1000px; width: 100%; position: fixed; left: 50%; top: 15%; transform: translate(-50%, -50%);z-index: 1;"></canvas>
        </div>
    </div>
</div>
<div style="width: 100%; height: 180px; margin-top: 440px; position: relative; z-index: 2; background: url(../../hdimg/bas/images_col/dot.png) no-repeat center;">
</div>
        <div class="column" style=" position: relative; z-index: 3;">
    <ul>
        <li class=""><a href="/col_qydt/index/">企业动态</a></li><li class=" on"><a href="/col_hydt/index/">行业动态</a></li>    </ul>
</div>
        <div style="background: #fff; position: relative; z-index: 2;">
        <div class="container" style="background: #fff;">
            <div class="detail">
                <h2><span style="color:#000">数据与分析领域的10大技术趋势</span> </h2>
                <div class="infos"><span>编辑：</span> <span>来源：人工智能与大数据</span> <span>更新于：2021-08-13</span><span>阅读：<span id="visitcount">0</span></span></div>
                <div class="contain"><h2 style="padding: 0px; margin: 5px 0px; color: rgb(51, 51, 51); white-space: normal; background-color: rgb(255, 255, 255); text-indent: 0em;"><span style="color: rgb(31, 73, 125);">预测：数据与分析领域的10大技术趋势</span></h2><p style="text-indent: 2em;">一直以来，数据分析领域都是企业领导者所看重的。近日，Gartner发布了关于数据与分析领域的10大技术趋势，各大企业领导者不妨参考看看。</p><h3 style="text-indent: 0em;"><span style="color: rgb(79, 129, 189);">01、更智能、更高速、更负责的AI</span></h3><p style="text-indent: 2em;">到2024年底，75%的企业机构将从人工智能(AI)试点转为AI运营，基于流数据的分析基础架构的数量将因此增加5倍。</p><p style="text-indent: 2em;">疫情当前，机器学习(ML)、优化和自然语言处理(NLP)等AI技术正就病毒传播、应对效果及影响提供重要洞察和预测。</p><p style="text-indent: 2em;">而强化学习和分布式学习等其他更智能的AI技术正在创建更具适应性和灵活性的系统，用于处理复杂的业务情况。例如，基于代理的系统可对复杂系统进行建模和仿真。</p><h3 style="text-indent: 0em;"><span style="color: rgb(79, 129, 189);">02、仪表板的衰落</span></h3><p style="text-indent: 2em;">具备更多自动化和消费化体验的动态数据故事将取代视觉化、点击式的数据创建和探索。因此，用户使用预定义仪表板的时间也将会减少。向支持增强分析或NLP等技术的动态数据故事转变，这意味着：最相关的洞察将基于用户的场景、角色或用途，流式传输给每个用户。</p><h3 style="padding: 0px; margin: 5px 0px; color: rgb(51, 51, 51); white-space: normal; background-color: rgb(255, 255, 255); text-indent: 0em;"><span style="color: rgb(79, 129, 189);">03、决策智能</span></h3><p style="text-indent: 2em;">到2023年，33%以上的大型企业机构将聘用分析师实现包括决策建模在内的决策智能。决策智能汇集了决策管理和决策支持等多项技术。它提供了一个框架，帮助数据和分析领导者针对业务成果和行为，设计、建立、协调、执行、监控和调整决策模型及流程。</p><h3 style="text-indent: 0em;"><span style="color: rgb(79, 129, 189);">04、X分析</span></h3><p style="text-indent: 2em;">“X分析”由Gartner创造的一个总称术语，其中的X指代各种结构化和非结构化内容(如文本分析、视频分析、音频分析等)的数据变量。</p><p style="text-indent: 2em;">在新冠疫情期间，AI发挥了关键作用，梳理了成千上万份研究论文、新闻资料、社交媒体内容和临床试验数据，帮助医疗和公共卫生专家预测疾病传播，制定能力规划，寻找新的治疗方法并确定易感人群。X分析与AI、图谱分析等其他技术结合起来，将对未来自然灾害和其他危机的识别、预测和规划发挥关键作用。</p><h3 style="text-indent: 0em;"><span style="color: rgb(79, 129, 189);">05、增强型数据管理</span></h3><p style="text-indent: 2em;">增强型数据管理利用ML和AI技术优化并改进运营。它还促进了元数据角色的转变，从协助数据审计、沿袭和汇报转为支持动态系统。</p><p style="text-indent: 2em;">增强型数据管理产品能够审查大量的运营数据样本，包括实际查询、性能数据和方案。利用现有的使用情况和工作负载数据，增强型引擎能够对运营进行调整，并优化配置、安全性和性能。</p><h3 style="text-indent: 0em;"><span style="color: rgb(79, 129, 189);">06、云成为必然</span></h3><p style="text-indent: 2em;">到2022年，公有云服务将对90%的数据和分析创新起到至关重要的作用。随着数据和分析的上云，数据和分析领导者仍然很难实现服务与用例的协调一致，这就增加了不必要的治理和集成开支。</p><p style="text-indent: 2em;">数据和分析问题的关键，已经从某项服务的成本转为如何在定价之外满足工作负载的性能要求。上云时，数据和分析领导者需要优先处理能够利用云能力和专注于成本优化的工作负载。</p><h3 style="text-indent: 0em;"><span style="color: rgb(79, 129, 189);">07、数据和分析的碰撞</span></h3><p style="text-indent: 2em;">数据管理能力和分析能力在传统上被视为不同的领域，需要分别进行管理。利用增强分析提供端到端工作流的供应商使这两个市场之间的界线变得模糊了。</p><p style="text-indent: 2em;">数据和分析的碰撞将增加这两个传统上相对独立的领域之间的交互和协作。这不仅会影响到所提供的技术和能力，还会使支持和使用它们的人员和流程受到影响。相关角色也将从传统的数据和分析扩展到信息探索人员和公民开发人员等。</p><h3 style="text-indent: 0em;"><span style="color: rgb(79, 129, 189);">08、数据市场和交易平台</span></h3><p style="text-indent: 2em;">到2022年，35%的大型企业机构将通过正式的在线数据市场参与数据交易，而这一比例在2020年为25%。数据市场和交易平台为整合第三方数据产品和降低第三方数据成本提供了统一平台。</p><h3 style="text-indent: 0em;"><span style="color: rgb(79, 129, 189);">09、区块链技术在数据和分析中的应用</span></h3><p style="text-indent: 2em;">区块链技术解决了数据和分析领域中的两项挑战。首先，区块链提供了资产和交易的完整沿袭。其次，区块链为复杂的参与者网络提供透明度。</p><p style="text-indent: 2em;">除了有限的比特币和智能合约用例之外，分类账目数据库管理系统(DBMS)将为单个企业审计数据来源提供了更具吸引力的选择。Gartner预计，到2021年，分类账目DBMS产品将取代多数许可区块链的使用。</p><h3 style="text-indent: 0em;"><span style="color: rgb(79, 129, 189);">10、关系奠定了数据和分析价值的基础</span></h3><p style="text-indent: 2em;">到2023年，图谱技术将促进全球30%的企业机构决策过程的快速情景化。图谱分析是指一系列用于探索不同感兴趣的实体(如组织、人员和交易)之间关系的技术。它帮助数据和分析领导者找到数据中未知的关系，并查看传统分析技术不易分析的数据。</p><p style="text-indent: 2em;">综上。数据和分析领导者如果希望在疫情后能持续创新，就需要不断提高数据处理和访问的速度，扩大分析规模，加快新冠疫情后的恢复，在前所未有的市场动荡中赢得成功。</p><p><br style="text-indent: 2em;"/></p></div>
                <div class="pre_next">
                    <ul class="pager" id="prevnext"></ul>
                </div>
            </div>
        </div>
        </div>
          <div style="width: 100%; height: 53px; border-bottom: 1px solid #414141; background: #121212; position: relative; z-index: 10;">
      <div class="body wow fadeInUp">
          <div id="foot_menu">
            <ul class="yiji">
                <!-- <li><a href="/">网站首页</a></li> -->
                <li class="li1 "><a href="/col_gsgk/index">关于柏隆</a></li><li class="li2 "><a href="/col_qydt/index">新闻中心</a></li><li class="li3 "><a href="/col_qghlwjrfw/index">业务领域</a></li><li class="li4 "><a href="/col_hxjzg/index">企业文化</a></li><li class="li5 "><a href="/col_zpxx/index">人才招聘</a></li><li class="li6 "><a href="/col_lxfs1/index">联系方式</a></li>            </ul>
          </div>
          <div id="foot_lx">
            <ul>
              <li>
                <a href="#"><img src="../../hdimg/bas/images_col/wb.png"/></a>
                <div class="hover"><a href="https://mp.weixin.qq.com/s/qXhQXdxl_jefdGRLzEfFvQ"><img alt="柏隆科技" src="../../hdupf/gimg/202107/20210719175707_293057.jpg" title="" style="border:0; width:100px; height:100px"></a></div>
              </li>
              <li>
                <a href="#"><img src="../../hdimg/bas/images_col/qq.png"/></a>
                <div class="hover"><a href="https://mp.weixin.qq.com/s/qXhQXdxl_jefdGRLzEfFvQ"><img alt="柏隆科技" src="../../hdupf/gimg/202107/20210719175707_293057.jpg" title="" style="border:0; width:100px; height:100px"></a></div>
              </li>
              <li>
                <a href="#"><img src="../../hdimg/bas/images_col/wx.png"/></a>
                <div class="hover"><a href="https://mp.weixin.qq.com/s/qXhQXdxl_jefdGRLzEfFvQ"><img alt="柏隆科技" src="../../hdupf/gimg/202107/20210719175707_293057.jpg" title="" style="border:0; width:100px; height:100px"></a></div>
              </li>
            </ul>
          </div>
      </div>
  </div>
  <div style="width: 100%; height: 210px;background: #121212; position: relative; z-index: 9;">
      <div class="body wow fadeInUp">
        <div id="foot_erweima">
          <p class="pic"><a href="https://mp.weixin.qq.com/s/qXhQXdxl_jefdGRLzEfFvQ"><img alt="柏隆科技" src="../../hdupf/gimg/202107/20210719175707_293057.jpg" title="" style="border:0; width:100px; height:100px"></a></p>
          <p class="text1">服务热线：</p>
          <p class="text2">0931-2338333</p>
          <p class="text1">传真：0931-2338333</p>
        </div>
        <div id="foot_yx">
          <ul>
            <li><span class="fa fa-envelope"></span>  邮箱：bolongkeji@bolong0931.com</li>
            <li><span class="fa fa-location-arrow"></span>  地址：中国甘肃省兰州市城关区庆阳路42号</li>
          </ul>
        </div>
        <div id="foot_form">
          <p class="text1">告诉我您的电话，我们联系您</p>
          <form>
            <input class="sch_input" type="text" name="k"/>
            <a href="/f/add/?sn=guestbook&burl=aHR0cDovL3d3dy5ibDA5MzEuY29tL2hkYXBwL2Jhcy9jb2xfZGV0YWlsLnBocD9pZD0xNDg=" data-target="#modal" data-toggle="modal" data-backdrop="static" class="sch_btn block">提交</a>
          </form>
        </div>
      </div>
  </div>
<div style="width: 100%; height: 50px;background: #050505; position: relative; z-index: 9;">
  <div class="body" style="height: 50px;">
      <div id="foot_info">
          Copyrights©2025 All Rights Reserved 版权所有 甘肃柏隆电子商务科技有限责任公司 <a href="http://beian.miit.gov.cn/" target="_blank">陇ICP备19004564号</a>
          <a target="_blank" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=62010202002842" ><img src="../../hdimg/bas/images/ga.png" alt="甘公网安备62010202002842号"/> 甘公网安备 62010202002842号</a>
      </div>
  </div>
 </div>




<a href="#" id="toTop"></a>



<!--[if lte IE 9]>
    <div class="tc_cont_w  tc_show" >
      <div class="tc_bg"></div>
      <div class="tc_cont">
        <dl class="tc_main">
          <dd class="tc_head">温馨提醒</dd>
          <dd class="tc_gantan"> <img src="../../hdimg/bas/images/gantan.png" /> </dd>
          <dd class="tc_txt">尊敬的用户，为了获得更好的用户体验，建议您使用高版本浏览器来对网站进行查看。</dd>
          <dd class="tc_btn"> <a href="../../browser.htm" target="_blank">一键下载放心安装</a></dd>
        </dl>
      </div>
    </div>
<![endif]-->
<div class="mload modal fade" id="modal" role="basic" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content"><div class="text-center padding-30 margin-top-20"><img src="/hdui/app/images/loaders/10.gif" alt="loading" /><p class="margin-top-20">正在加载，请稍后...</p></div></div>
    </div>
</div>
<div class="mload modal fade" id="modal-sm" role="basic" aria-hidden="true">
    <div class="modal-dialog modal-sm">
        <div class="modal-content"><div class="text-center padding-30 margin-top-20"><img src="/hdui/app/images/loaders/10.gif" alt="loading" /><p class="margin-top-20">正在加载，请稍后...</p></div></div>
    </div>
</div>
<div class="mload modal fade" id="modal-lg" role="basic" aria-hidden="true">
    <div class="modal-dialog modal-lg">
        <div class="modal-content" style="text-align: center;"><div class="text-center padding-30 margin-top-20"><img src="/hdui/app/images/loaders/10.gif" alt="loading" /><p class="margin-top-20">正在加载，请稍后...</p></div></div>
    </div>
</div>
<div class="mload modal fade" id="modal-full" role="basic" aria-hidden="true">
    <div class="modal-dialog modal-full">
        <div class="modal-content"><div class="text-center padding-30 margin-top-20"><img src="/hdui/app/images/loaders/10.gif" alt="loading" /><p class="margin-top-20">正在加载，请稍后...</p></div></div>
    </div>
</div>
<script type="text/javascript">var plugin_path = '../../hdui/app/plugins/';</script>
<script type="text/javascript" src="../../hdui/app/js/j.min.js"></script>
<script type="text/javascript" src="../../hdui/app/js/b.min.js"></script>
<script type="text/javascript" src="../../hdimg/bas/js/jquery.SuperSlide.2.1.1.js"></script>
<script type="text/javascript" src="../../hdimg/bas/js/jquery.parallax-1.1.3.js"></script>
<script type="text/javascript" src="../../hdui/app/js/hdjs.min.js"></script>
<script type="text/javascript" src="../../hdimg/bas/js/myjs.js"></script>
<!-- SWIPER SLIDER -->
<script type="text/javascript" src="../../hdui/app/plugins/slider.swiper/dist/js/swiper.min.js"></script>
<script type="text/javascript" src="../../hdui/app/js/view/demo.swiper_slider.js"></script>

<script src="../../hdui/app/plugins/validate/jquery.validate.min.js"></script>
<script src="../../hdui/app/plugins/validate/jquery.validate.add.js"></script>
<script src="../../hdui/app/plugins/validate/jquery.validate.cn.min.js"></script>

<script>
$(document).ready(function() {
  $('.nav-menu-content-box').hover(function() {
          $(this).addClass('dow-hover');
          $(".nav-menu-content").show('slow');
      }, function() {
          $(this).removeClass('dow-hover');
      });
    $.get('/hdapp/bas/d.php?ac=all',function(all){
        var reobj = eval('(' + all + ')');
        var ttip = reobj.sysvisit.ttip;
        var ttvp = reobj.sysvisit.ttvp
        $("#umenu").html(reobj.umenu);
        $("#sys_count_ttip").html('UV/'+ttip);
        $("#sys_count_ttvp").html('PV/'+ttvp);
    })
    jQuery(".sideMenu").slide({
        titCell:"h3", //鼠标触发对象
        targetCell:"ul", //与titCell一一对应，第n个titCell控制第n个targetCell的显示隐藏
        effect:"left", //targetCell下拉效果
        delayTime:300 , //效果时间
        triggerTime:150, //鼠标延迟触发时间（默认150）
        defaultPlay:true,//默认是否执行效果（默认true）
        returnDefault:true, //鼠标从.sideMen移走后返回默认状态（默认false）
        trigger:"mouseover"
    });
    jQuery(".txtMarquee-left").slide({mainCell:".bd ul",autoPlay:true,effect:"leftMarquee",vis:5,interTime:50});

    $(".detail img").each(function(){
      $(this).attr("title","");
    });
});
var maxHeight = 400;

$(function(){
    $(".nav-menu-content-box > li").hover(function() {
        var $container = $(this),
        $list = $container.find("ul"),
        $anchor = $container.find("a"),
        height = $list.height() * 1.1,
        multiplier = height / maxHeight;
        $container.data("origHeight", $container.height());
        $anchor.addClass("hover");
        $list
            .show()
            .css({
                paddingTop: $container.data("origHeight")
            });
        if (multiplier > 1) {
            $container
                .css({
                    height: maxHeight,
                    overflow: "hidden"
                })
                .mousemove(function(e) {
                    var offset = $container.offset();
                    var relativeY = ((e.pageY - offset.top) * multiplier) - ($container.data("origHeight") * multiplier);
                    if (relativeY > $container.data("origHeight")) {
                        $list.css("top", -relativeY + $container.data("origHeight"));
                    };
                });
        }

    }, function() {

        var $el = $(this);

        $el
            .height($(this).data("origHeight"))
            .find("ul")
            .css({ top: 0 })
            .hide()
            .end()
            .find("a")
            .removeClass("hover");

    });

});

  var dom = $('.page .box').offset();
  if(dom){
    var right = dom.left;
    $('.page .right').css('right',right+'px');
  }
  $(window).resize(function(){
    var dom = $('.page .box').offset();
    if(dom){
      var right = dom.left;
      $('.page .right').css('right',right+'px');
    }
  });
  resizeWindow();
  $(document).on('scroll',function(){
    resizeWindow();
  });
  function resizeWindow(){
      if($(document).scrollTop() > 220){
        $('.page .right').css('top','150px');
      }else{
        $('.page .right').css('top','431px');
      }
    }
</script>
<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"slide":{"type":"slide","bdImg":"3","bdPos":"right","bdTop":"100"}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script><script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"slide":{"type":"slide","bdImg":"3","bdPos":"right","bdTop":"100"}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>        <script src="../../hdui/app/plugins/validate/jquery.validate.min.js"></script>
        <script src="../../hdui/app/plugins/validate/jquery.validate.add.js"></script>
        <script src="../../hdui/app/plugins/validate/jquery.validate.cn.min.js"></script>
                <script type="text/javascript" charset="utf-8" src="../../hdudt/ueditor.parse.min.js"> </script>
        <script type="text/javascript" src="../../hdimg/bas/js/jquery.SuperSlide.2.1.1.js"></script>
        <script>
        uParse('#dtl_detail', {
            rootPath: '../../hdudt/'
        })
        </script>
                <script>
        $(document).ready(function() {
             var  timestr = getDateDiff('2021-08-13 16:15:00');
            $('#addtime').html(timestr);
            // 将编辑器里的图片改为响应式
            $('#dtl_detail img').each(function() {
                $(this).addClass("img-responsive");
            });
            $.get("/hdapp/bas/d.php?ac=col_detail&id=148",function(col){
                var reobj = eval('('+col+')');
                $('#prevnext').html(reobj.prevnext);
                $('#visitcount').html(reobj.colvisit);
            });
            $.get('../../hdapp/bas/col_fdb.php?id=148&burl=aHR0cDovL3d3dy5ibDA5MzEuY29tL2hkYXBwL2Jhcy9jb2xfZGV0YWlsLnBocD9pZD0xNDg=',function(fdb){
                 $('#comments').html(fdb);
            });
            $('#col_sch_bt').click(function(){
                sch(1);
            });
            jQuery(".slideTxtBox").slide();
        })
            function sch_col(page=1){
                sch(page);
            }
            function sch(page){
                $(document).scrollTop(0);
                $('#col_list').html('<div class="text-center padding-30 margin-top-20"><img src="/hdui/app/images/loaders/10.gif" alt="loading" /><p class="margin-top-20">正在加载，请稍后...</p></div>')
                var q = $('#col_q').val();
                var sn = "hydt";
                $.get(encodeURI('/s/col/?q='+q+'&sn='+sn+'&page='+page),function(data){
                    var schtitle = '<div class="heading-title heading-line-single margin-bottom-0"><h3>在 行业动态 下 搜索 <span>'+q+'</span> 的结果</h3></div>'
                    $('#col_list').html(schtitle+data);
                });
            }
            function sch_hkw(k){
                $('#col_q').val(k);
                sch_col();
            }
            function getscol(ssn,sname){
            $('#col_ssn').attr('data-sign',ssn);
            $('#col_ssn').attr('data-name',sname);
            scol();
            }
            function scol(page){
                $(document).scrollTop(0);
                $('#col_list').html('<div class="text-center padding-30 margin-top-20"><img src="/hdui/app/images/loaders/10.gif" alt="loading" /><p class="margin-top-20">正在加载，请稍后...</p></div>');
                let ssn = $('#col_ssn').attr('data-sign');
                let sname = $('#col_ssn').attr('data-name');
                $.get(encodeURI('/hdapp/bas/col_sub.php?&ssn='+ssn+'&page='+page),function(data){
                    var schtitle = '<div class="heading-title heading-line-single margin-bottom-0"><h3>子类 <span>'+sname+'</span> 下的内容</h3></div>'
                    $('#col_list').html(schtitle+data);
                });
            }
            
            function getDateDiff(dateStr){
                dateTimeStamp = Date.parse(dateStr.replace(/-/gi,"/"));
                var minute = 1000 * 60;
                var hour = minute * 60;
                var day = hour * 24;
                var halfamonth = day * 15;
                var month = day * 30;
                var now = new Date().getTime();
                var diffValue = now - dateTimeStamp;
                if(diffValue < 0){return;}
                var monthC =diffValue/month;
                var weekC =diffValue/(7*day);
                var dayC =diffValue/day;
                var hourC =diffValue/hour;
                var minC =diffValue/minute;
                if(monthC>=1){
                 result="" + parseInt(monthC) + "月前";
                }
                else if(weekC>=1){
                 result="" + parseInt(weekC) + "周前";
                }
                else if(dayC>=1){
                 result=""+ parseInt(dayC) +"天前";
                }
                else if(hourC>=1){
                 result=""+ parseInt(hourC) +"小时前";
                }
                else if(minC>=1){
                 result=""+ parseInt(minC) +"分钟前";
                }else
                result="刚刚";
                return result;
            }
      </script>
      <script src="../../hdimg/bas/js/jwmeyy.js" type="text/javascript" charset="utf-8"></script>
      <script>
      var _createClass = function() {
          function defineProperties(target, props) {
              for (var i = 0; i < props.length; i++) {
                  var descriptor = props[i];
                  descriptor.enumerable = descriptor.enumerable || false;
                  descriptor.configurable = true;
                  if ("value" in descriptor) descriptor.writable = true;
                  Object.defineProperty(target, descriptor.key, descriptor);
              }
          }
          return function(Constructor, protoProps, staticProps) {
              if (protoProps) defineProperties(Constructor.prototype, protoProps);
              if (staticProps) defineProperties(Constructor, staticProps);
              return Constructor;
          };
      } ();

      function _classCallCheck(instance, Constructor) {
          if (! (instance instanceof Constructor)) {
              throw new TypeError("Cannot call a class as a function");
          }
      }

      function _possibleConstructorReturn(self, call) {
          if (!self) {
              throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
          }
          return call && (typeof call === "object" || typeof call === "function") ? call: self;
      }

      function _inherits(subClass, superClass) {
          if (typeof superClass !== "function" && superClass !== null) {
              throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);
          }
          subClass.prototype = Object.create(superClass && superClass.prototype, {
              constructor: {
                  value: subClass,
                  enumerable: false,
                  writable: true,
                  configurable: true
              }
          });
          if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
      }

      var Point = function(_F3$Obj) {
          _inherits(Point, _F3$Obj);

          function Point() {
              var radius = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 5;

              _classCallCheck(this, Point);

              var _this = _possibleConstructorReturn(this, (Point.__proto__ || Object.getPrototypeOf(Point)).call(this));

              _this.radius = radius;
              _this.color = 'rgba(' + [Math.random() * 255 | 0, Math.random() * 255 | 0, Math.random() * 255 | 0, Math.random()].join(',') + ')';
              _this.prevCrood = null;
              return _this;
          }

          _createClass(Point, [{
              key: 'render',
              value: function render(ctx) {

                  ctx.fillStyle = '#fff';
                  ctx.fillRect(this.croods2D.position.x, this.croods2D.position.y, this.radius * this.croods2D.scale * this.yScale, this.radius * this.croods2D.scale * this.yScale);
              }
          }]);

          return Point;
      } (F3.Obj);

      var planeFunctions = {
          'sin(sqrt(x^2+z^2))': function sinSqrtX2Z2(x, z, offset) {
              return Math.sin(Math.sqrt(Math.pow(x / 2, 2) + Math.pow(z / 2, 2)) - offset);
          },
          'cos(x)*sin(z)': function cosXSinZ(x, z, offset) {
              return Math.cos(x / 4 + offset) * Math.sin(z / 4 + offset) * 1;
          }
      };

      var Effect = function(_F3$Time) {
          _inherits(Effect, _F3$Time);

          function Effect(renderer, scene, camera, cvs) {
              _classCallCheck(this, Effect);

              var _this2 = _possibleConstructorReturn(this, (Effect.__proto__ || Object.getPrototypeOf(Effect)).call(this));

              _this2.renderer = renderer;
              _this2.scene = scene;
              _this2.camera = camera;
              _this2.cvs = cvs;

              _this2.xOffset = 0;
              _this2.waveHeight = 0.4; // 波高
              _this2.waveWidth = 8; // 波长
              _this2.col = 33;
              _this2.colPointNum = 33;

              _this2.flyTime = 2000;
              _this2.timePass = 0;

              _this2.scale = 1;
              _this2.scaleStep = 0.01;

              _this2.planeFunction = function() {
                  return 0;
              };
              _this2.rotate = {
                  x: false,
                  y: false,
                  z: false
              };

              _this2.pointGroup = new F3.Obj();
              _this2.scene.add(_this2.pointGroup);

              _this2.resize(cvs.width, cvs.height);
              _this2.init();
              return _this2;
          }

          _createClass(Effect, [{
              key: 'resize',
              value: function resize(width, height) {
                  this.cvs.width = width;
                  this.cvs.height = height;
                  // this.pointGroup.position.set(this.cvs.width/2, this.cvs.height, 0);
                  this.stepWidth = width * 1.8 / this.col;
                  this.pointGroup.setPosition(this.cvs.width / 2, this.cvs.height * 1.2, -this.col * this.stepWidth / 2);
                  this.pointGroup.setRotation(0.1, 0, 0);
                  // this.waveHeight = height/2;
                  // this.waveWidth = this.waveHeight * 4;
                  // console.log(this.stepWidth);
              }
          },
          {
              key: 'init',
              value: function init() {
                  // create point
                  var point;
                  for (var x = -(this.col - 1) / 2, count = 0; x <= (this.col - 1) / 2; x++) {
                      for (var z = -(this.colPointNum - 1) / 2; z <= (this.colPointNum - 1) / 2; z++) {
                          point = new Point(10);
                          this.pointGroup.add(point);
                          /*point.initPos = new F3.Vector3(
                               x + Math.random() * -2 + 1,
                               -30 + -10 * Math.random(),
                               z + Math.random() * -2 + 1
                          );*/
                          point.initPos = new F3.Vector3(0, 0, 0);
                          point.flyDelay = 0; //Math.random() * 1000 | 0;
                      }
                  }
              }
          },
          {
              key: 'update',
              value: function update(delta) {
                  this.timePass += delta;
                  this.xOffset = this.timePass / 500;

                  var point = void 0;
                  var flyPecent = void 0;
                  var x = void 0,
                  y = void 0,
                  z = void 0;
                  var count = 0;

                  // if (this.timePass < 100)
                  for (x = -(this.col - 1) / 2; x <= (this.col - 1) / 2; x++) {
                      for (z = -(this.colPointNum - 1) / 2; z <= (this.colPointNum - 1) / 2; z++) {

                          // let y = Math.cos(x*Math.PI/this.waveWidth + this.xOffset)*Math.sin(z*Math.PI/this.waveWidth + this.xOffset) * this.waveHeight;
                          y = this.planeFunction(x, z, this.xOffset);
                          // let y = Math.sin(Math.sqrt(Math.pow(x/v, 2)+Math.pow(z/v, 2)) - this.xOffset) * 1
                          // console.log(y);
                          point = this.pointGroup.children[count];
                          point.yScale = 1; //(-y + 0.6)/(this.waveHeight) * 1.5;
                          flyPecent = (this.timePass - point.flyDelay) / this.flyTime;
                          flyPecent = flyPecent > 1 ? 1 : flyPecent < 0 ? 0 : flyPecent;

                          point.setPosition(x * this.stepWidth, y * this.stepWidth, z * this.stepWidth);
                          count++;
                      }
                  }
                  if (this.rotate.x || this.rotate.y || this.rotate.z) {
                      this.pointGroup.setRotation(this.rotate.x ? this.pointGroup.rotation.x + 0.001 : 0, this.rotate.y ? this.pointGroup.rotation.y + 0.001 : 0, this.rotate.z ? this.pointGroup.rotation.z + 0.001 : 0);
                  }
              }
          },
          {
              key: 'setFunction',
              value: function setFunction(fun) {
                  this.planeFunction = fun;
              }
          },
          {
              key: 'toggleRotate',
              value: function toggleRotate(r) {
                  this.rotate[r] = !this.rotate[r];
                  if (!this.rotate[r]) {
                      this.pointGroup.rotation[r] = 0;
                  }
              }
          },
          {
              key: 'animate',
              value: function animate() {
                  var _this3 = this;

                  this.addTick(function(delta) {
                      _this3.update(delta);
                      _this3.renderer.render(_this3.scene, _this3.camera);
                  });
              }
          }]);

          return Effect;
      } (F3.Time);

      function init(cvs) {
          var ctx = cvs.getContext('2d');

          var scene = new F3.Scene();
          var camera = new F3.Camera();
          camera.origin = new F3.Vector3(cvs.width / 2, cvs.height / 3);
          camera.p = 1200;

          var renderer = new F3.Renderer(ctx, cvs);
          var effect = new Effect(renderer, scene, camera, cvs);
          effect.animate();

          var functions = document.querySelector('.functions');
          var btnHTML = '';
          for (var name in planeFunctions) {
              btnHTML += '<div class="btn" data-function="' + name + '">' + name + '</div>';
          }
          functions.innerHTML = btnHTML;

          var btns = functions.querySelectorAll('.btn');
          function selectFunction(funName) {
              btns.forEach(function(btn) {
                  var dataFunction = btn.dataset.
                  function;
                  if (dataFunction === funName) {
                      btn.classList.add('active');
                      effect.setFunction(planeFunctions[funName]);
                  } else {
                      btn.classList.remove('active');
                  }
              });
          }
          selectFunction(btns[0].dataset.
          function);
          functions.addEventListener('click',
          function(e) {
              if (e.target.dataset.
              function) {
                  selectFunction(e.target.dataset.
                  function);
              }
          });

          var rotate = document.querySelector('.rotate');
          var rotateBtns = rotate.querySelectorAll('.btn');
          function toggleRotate(_r) {
              rotateBtns.forEach(function(rotateBtn) {
                  var r = rotateBtn.dataset.rotate;
                  if (r === _r) {
                      rotateBtn.classList.toggle('active');
                      effect.toggleRotate(r);
                  }
              });
          }
          toggleRotate('y');
          rotate.addEventListener('click',
          function(e) {
              if (e.target.dataset.rotate) {
                  toggleRotate(e.target.dataset.rotate);
              }
          });

          F3.TIME.start();
      }
      init(document.querySelector('canvas'));
      </script>
    </body>
</html>