废话不多说,先上效果图
公司最近做一个振动项目,需要展示振动曲线,考虑其直观性,决定用3D折线图来做。
首先你要引入echarts的相关js,下图为我引入的例子,其中GL那个js是echarts控制3D的,你可根据自己需要去echarts官方网站上下载这俩js

<script src="${ctxStatic}/plugin/echarts4/echarts.min.js"></script>
<script src="${ctxStatic}/plugin/echarts4/echarts-gl.js"></script>

前台页面自己定义个div

<div id="lsqx" style="display:none;height:600px;right:10px;left:221px;border: 1px;bottom: 20px;z-index:999;position: absolute"></div>

下边的是绘制曲线的方法,曲线数据你们自己造就行了

function historyLine(xzdsj,fft,fft1st,fft1stX,fft1stY,fft2nd,fft2ndX,fft2ndY,fft3rd,fft3rdX,fft3rdY,fft4th,fft4thX,fft4thY,fft5th,fft5thX,fft5thY,selected){// closeLine();$("#lsqx").show();var x1 = xzdsj;x1 = x1.split(",");var fft1 = fft;fft1 = fft1.split(",");var fft1st = fft1st;fft1st = fft1st.split(",");var fft2nd = fft2nd;fft2nd = fft2nd.split(",");var fft3rd = fft3rd;fft3rd = fft3rd.split(",");var fft4th = fft4th;fft4th = fft4th.split(",");var fft5th = fft5th;fft5th = fft5th.split(",");// console.log(xzdsj);// console.log(x);var xzdsjArr= xzdsj;var arrayLength = xzdsjArr.toString().split(',');var xzdsjArrayLength= new Array();var xzdsjArrayLengthStr= new Array();var xzdsjArrayLengthStr0= new Array();var step=0.32/(arrayLength.length)for(var i=0;i<arrayLength.length;i++){xzdsjArrayLength[i]=keepTwoDecimal(i*step);xzdsjArrayLengthStr+=keepTwoDecimal(i*step)+","xzdsjArrayLengthStr0+="0"+","}xzdsjArrayLengthStr = xzdsjArrayLengthStr.substring(0, xzdsjArrayLengthStr.lastIndexOf(','));xzdsjArrayLengthStr0 = xzdsjArrayLengthStr0.substring(0, xzdsjArrayLengthStr0.lastIndexOf(','));xzdsjArrayLengthStr=xzdsjArrayLengthStr.split(",")xzdsjArrayLengthStr0=xzdsjArrayLengthStr0.split(",")// console.log(xzdsjArrayLengthStr);data = [x1,  //速度曲线fft1st,  //fftfft2nd,fft3rd,fft4th,fft5th,]dataX = xzdsjArrayLengthStr;dataX0 = xzdsjArrayLengthStr0;dataY = ['速度曲线','频率曲线('+ fft1stX +'Hz)','频率曲线('+ fft2ndX +'Hz)','频率曲线('+ fft3rdX +'Hz)','频率曲线('+ fft4thX +'Hz)','频率曲线('+ fft5thX +'Hz)'];//vdata里面存放的是处理之后的数据var vdata = [];var FFTdata = [];for(i=0;i<dataY.length;i++){vdata[i] = [];   //vdata里面存放的是二维数组}for(i=0;i<dataY.length;i++){FFTdata[i] = [];   //vdata里面存放的是二维数组}
//将处理完之后的数据存放到 vdata 里面for(var t=0;t<dataY.length;t++){var y = dataY[t];for(var k=0;k<data[0].length;k++){for(var p=0;p<dataX.length;p++){var x = dataX[p];var z = data[t][p];vdata[t].push([x,y,z]);FFTdata[t].push([y,x,z]);}break;}}var myChart = echarts.init(document.getElementById('lsqx'),'macarons');myChart.clear();var lsqx = document.getElementById('lsqx');// lsqx.style.display = "block";var option;// console.log(xzdsj);option = {title: {text: selected// ,// subtext:selected,},xAxis3D: {type: 'category',name: '',data: dataX,axisLabel:{show: false,interval: 0  //使x轴都显示},splitLine:{show:false}},yAxis3D: {type: 'category',name: '',data: dataY,axisLabel:{show: true,interval: 0   //使y轴都显示}},zAxis3D: {type: 'value',name: ''},//图例legend: {orient: 'vertical',right: 10,top: 230,icon: 'roundRect',textStyle:{color: '#fff'}},tooltip:{show:true},grid3D: {boxWidth: 900,boxHeight:300,boxDepth: 200,axisLine: {show: true,interval: 0,lineStyle: {color: '#fff'}},viewControl: {distance: 500,minDistance: 40,maxDistance: 800,},splitArea:{show:true},light:{color: '#fff',shadow: true}},toolbox: {feature: {dataView: {show: true, readOnly: false},restore: {show: true},saveAsImage: {show: true},// dataZoom: {  show: true  },myTool1: {show: true,title: '关闭',icon: 'path://M6.34314575 6.34314575L17.6568542 17.6568542M6.34314575 17.6568542L17.6568542 6.34314575',onclick: function (){$("#lsqx").hide();$("#datetime1").hide();$("#timeList").hide();}}}},series: [{type: 'scatter3D',name: '速度曲线',symbol: 'none',  //取消折点圆圈smooth: true,itemStyle: {normal: {areaStyle: {type: 'default'}}},bevelSmoothness:4,data:vdata[0]   //每个区的数据一一对应},{type: 'scatter3D',name: '频率曲线('+ fft1stX +'Hz)',symbol: 'none',  //取消折点圆圈smooth: true,itemStyle: {normal: {areaStyle: {type: 'default'}}},data:vdata[1]},{type: 'scatter3D',name: '频率曲线('+ fft2ndX +'Hz)',symbol: 'none',  //取消折点圆圈smooth: true,itemStyle: {normal: {areaStyle: {type: 'default'}}},data:vdata[2]},{type: 'scatter3D',name: '频率曲线('+ fft3rdX +'Hz)',symbol: 'none',  //取消折点圆圈smooth: true,itemStyle: {normal: {areaStyle: {type: 'default'}}},data:vdata[3]},{type: 'scatter3D',name: '频率曲线('+ fft4thX +'Hz)',symbol: 'none',  //取消折点圆圈smooth: true,itemStyle: {normal: {areaStyle: {type: 'default'}}},data:vdata[4]},{type: 'scatter3D',name: '频率曲线('+ fft5thX +'Hz)',symbol: 'none',  //取消折点圆圈smooth: true,itemStyle: {normal: {areaStyle: {type: 'default'}}},data:vdata[5]},{type: 'line3D', //当type为line3D时有label没有作用,官网没有label这个配置项name: '速度曲线',lineStyle: {width: 4},symbol: 'none',  //取消折点圆圈smooth: true,itemStyle: {normal: {areaStyle: {type: 'default'}}},data:vdata[0]    //每个区的数据一一对应},{type: 'line3D',name: '频率曲线('+ fft1stX +'Hz)',lineStyle: {width: 3     //线的宽度},symbol: 'none',  //取消折点圆圈smooth: true,itemStyle: {normal: {areaStyle: {type: 'default'}}},data:vdata[1]},{type: 'line3D',name: '频率曲线('+ fft2ndX +'Hz)',lineStyle: {width: 3},symbol: 'none',  //取消折点圆圈smooth: true,itemStyle: {normal: {areaStyle: {type: 'default'}}},data:vdata[2]},{type: 'line3D',name: '频率曲线('+ fft3rdX +'Hz)',lineStyle: {width: 3},symbol: 'none',  //取消折点圆圈smooth: true,itemStyle: {normal: {areaStyle: {type: 'default'}}},data:vdata[3]},{type: 'line3D',name: '频率曲线('+ fft4thX +'Hz)',lineStyle: {width: 3},symbol: 'none',  //取消折点圆圈smooth: true,itemStyle: {normal: {areaStyle: {type: 'default'}}},data:vdata[4]},{type: 'line3D',name: '频率曲线('+ fft5thX +'Hz)',lineStyle: {width: 3},symbol: 'none',  //取消折点圆圈smooth: true,itemStyle: {normal: {areaStyle: {type: 'default'}}},data:vdata[5]}]};// option.legend.selected[selected] = true;myChart.setOption(option);
}

echarts 3D折线图应用相关推荐

  1. echarts 3d折线图 鼠标/坐标轴指示线修改颜色

    echarts提供了一个统一的坐标指示器的修改配置项,所以一般情况下tooltip设置axisPointer信息即可 tooltip: {show: true,axisPointer: { //坐标指 ...

  2. php echarts 两条曲线图,使用laravel和ECharts实现折线图效果的例子

    1.首先引入echart.js 2.html页面,要有一个布局容器,用来显示图像,一定要设置宽和高 3.echarts折线图的使用 var myChart = echarts.init(documen ...

  3. echarts中折线图、柱状图之间的转换

    echarts中折线图.柱形图.数据视图的转换需要toolbox里面的内容(也就是加粗的部分) // 基于准备好的dom,初始化echarts实例     var day = echarts.init ...

  4. echarts图表折线图柱状图多个X轴Y轴以及一个Y轴反向

    echarts图表折线图柱状图多个X轴Y轴以及一个Y轴反向 option1: {color: ['#21E9F6', '#F2CE2E', '#EE2929', '#006DD9', '#1789FF ...

  5. echarts画折线图和数据excel导出

    最近一直使用echarts画折线图,在此做个记录 最后样式 代码 <!DOCTYPE html> <html style="height: 100%">&l ...

  6. java绘制三维曲线_使用JFreeChart绘制2D和3D折线图 | 学步园

    这是一个Web Project 首先是web.xml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schem ...

  7. JFreeChart在Struts2中实现3D折线图统计

    在Struts2中,用JFreeChart实现3D折线图统计 前段时间学习了一下JFreeChart,现在来整理一下自己所作的实例. 下面分别用两种方式来实现: 一种是以java应用程序的方式,一种是 ...

  8. 使用JFreeChart绘制2D和3D折线图

    完整版见https://jadyer.github.io/ 这是一个Web Project 首先是web.xml <?xml version="1.0" encoding=& ...

  9. Python数据可视化 Pyecharts 制作 Line3D 3D折线图

    Python3 的 Pyecharts 制作 Line3D(3D折线图) 时需要使用的设置参数和常用模板案例,可根据实际情况对案例中的内容进行调整即可. 文章目录 Demo 举例 弹簧3D折线图 Li ...

最新文章

  1. ListT随机返回一个
  2. 天哪,路由器都能跑Docker了!
  3. 如何使用python画折线图-Python 使用 matplotlib 画折线图教程
  4. 科创板允许红筹企业上市 条件成熟后BAT可速回归
  5. JS 怎样模拟类的特性
  6. 制作模块-安装模块压缩包
  7. UnderScore的使用实例记录
  8. python 正整数 连续多个数之和_vijos - P1302连续自然数和 (公式推导 + python)
  9. python七巧板三角形_用七巧板拼出14种三角形,这才是图形认知的神器!
  10. 【Flink】Flink keyed State多年的误解 以及 Keyed state redistribute
  11. [今日白学]组件的基础的基础的基础
  12. 荣登Github日榜!微信最新开源MMKV
  13. Linux驱动开发|UART驱动
  14. python创建一个银行账户类account_银行账户(示例代码)
  15. 使用python画出简易的滑稽表情
  16. switch语句应用例题
  17. Android 系统服务
  18. 女性内分泌失调要小心
  19. 富阳天空之城在哪里?
  20. asp.net实现识别客户端浏览器或操作系统

热门文章

  1. STM32HAL库驱动DS18B20温度传感器
  2. 洛谷P1747-好奇怪的游戏(BFS)
  3. unity导出android,可以显示出MMD模型,但是不能播放动作。求解答
  4. Google加强辨识有害程序 运用深度学习找出隐藏关联
  5. Jetson Nano 发送和接收串口数据
  6. 风速 电池测试软件,QDF-6型智能热球风速计操作规程
  7. 多线程爪巴虫下载进击的巨人 v.1
  8. 关于深度学习的8大免费必读经典书目推荐!
  9. nokia5110液晶初始化
  10. 再过半个小时,你就能明白kafka的工作原理了(2)(*)