当前位置: 首页 > news >正文

郑州做网站熊掌号做app软件大概多少钱

郑州做网站熊掌号,做app软件大概多少钱,在网站做时时彩代理违法,那个网站做系统好react项目通过echarts使用3D图 1.引入echarts跟echarts-gl "echarts": "^4.9.0","echarts-gl": "^1.1.1",这是我用的版本,挺好使的,echarts版本过5后容易出问题这里不做解释 2.封装个组件专门接收echarts配置…

react项目通过echarts使用3D图

1.引入echarts跟echarts-gl

	"echarts": "^4.9.0","echarts-gl": "^1.1.1",

这是我用的版本,挺好使的,echarts版本过5后容易出问题这里不做解释

2.封装个组件专门接收echarts配置

//Myecharts.jsx
import React, { useEffect, useRef } from 'react'
import * as echarts from 'echarts'
import 'echarts-gl'const Myecharts=(props)=> {useEffect(() => {var myChart = echarts.init(document.getElementById(props.id));console.log(props.option)if(props.option!=null){myChart.setOption(props.option)}else{console.log("err,无数据")}}, [props.option]) // 当props.option变化时,重新执行const stylestr = {width: '100%',height:'100%'}return (<div id={props.id} style={stylestr}></div>)
}export default Myecharts;

我这里react版本是16.8.6的这个注意下,高版本一些引入导出会有些不同

3.需要使用的地方直接引入组件然后传配置就行

import React, { useState, useEffect, useRef } from 'react'
import { Myecharts } from '../lib/index'
import * as echarts from 'echarts'
import 'echarts-gl'const Chart = () => {// var x = [1, 2, 3, 4]// var y = [6, 7, 8, 9]// var z = [11, 12, 13, 14]// const xyz = x.map((value, index) => [value, y[index], z[index]])var data = []var data3 = []// 3d折线数据for (var t = 0; t < 25; t += 0.001) {var x = (1 + 0.25 * Math.cos(75 * t)) * Math.cos(t)var y = (1 + 0.25 * Math.cos(75 * t)) * Math.sin(t)var z = t + 2.0 * Math.sin(75 * t)data.push([x, y, z])}for (var i = 0; i <= 10000; i++) {var x = i + 0.5var y = ivar z = i + 1.5data3.push([x, y, z])}// 3d曲面数据const apiData = {xAxis: [0, 0.1, 0.2, 0.3, 0.4, 0.5],yAxis: [0, 0.1, 0.2, 0.3, 0.4, 0.5],data: [[0.0, 0.31, 0.59, 0.81, 0.95, 1.0],[0.31, 0.59, 0.81, 0.95, 0.99, 0.95],[0.59, 0.81, 0.95, 0.99, 0.95, 0.81],[0.81, 0.95, 0.99, 0.95, 0.81, 0.59],[0.95, 0.99, 0.95, 0.81, 0.59, 0.31],[1.0, 0.95, 0.81, 0.59, 0.31, 0.0]]}const chartData = processGridData(apiData)function processGridData (apiData) {const { xAxis, yAxis, data } = apiDataconst result = []for (let i = 0; i < yAxis.length; i++) {for (let j = 0; j < xAxis.length; j++) {if (data[i][j] !== null && data[i][j] !== '-') {result.push([xAxis[j], yAxis[i], data[i][j]])}}}return result}let option = {tooltip: {},backgroundColor: '#fff',visualMap: {show: false,dimension: 2,min: 0,max: 30,inRange: {color: ['#313695','#4575b4','#74add1','#abd9e9','#e0f3f8','#ffffbf','#fee090','#fdae61','#f46d43','#d73027','#a50026']}},xAxis3D: {type: 'value'},yAxis3D: {type: 'value'},zAxis3D: {type: 'value'},grid3D: {viewControl: {projection: 'orthographic'}},series: [{type: 'line3D',data: data3,lineStyle: {width: 4}},// {//   name: '数据',//   type: 'line3D',//   data: data1,//   lineStyle: { color: '#ff0000' } // 红色线条// },// {//   name: '数据2',//   type: 'line3D',//   data: data2,//   lineStyle: { color: '#00ff00' } // 绿色线条// },// {//   name: '数据3',//   type: 'line3D',//   data: data3,//   lineStyle: { color: '#a50026' }// }]}// 曲面let option2 = {tooltip: {},backgroundColor: '#fff',visualMap: {//视觉映射show: false,dimension: 2,min: -1,max: 1,inRange: {color: ['#313695','#4575b4','#74add1','#abd9e9','#e0f3f8','#ffffbf','#fee090','#fdae61','#f46d43','#d73027','#a50026']}},xAxis3D: {type: 'value'},yAxis3D: {type: 'value'},zAxis3D: {type: 'value'},grid3D: {viewControl: {// projection: 'orthographic'}},series: [{name: '数据',type: 'surface',zlevel: -10,wireframe: {show: true,lineStyle: {color: 'rgba(0,0,0,0.3)',width: 0.8}},data: chartData// equation: {//   x: { step: 0.02 },//   y: { step: 0.02 },//   z: function (x, y) {//     if (Math.abs(x) < 0.1 && Math.abs(y) < 0.1) return '-'//     return Math.sin(x * Math.PI) * Math.sin(y * Math.PI)//   }// }},// {//   name: '数据2',//   zlevel: -10,//   type: 'surface',//   data: [[0, 20, 0.006], [1000, 20, 0.009], [1200, 20, 0.0095], [1500, 20, 0.010],//   [0, 40, 0.016], [1000, 40, 0.022], [1200, 40, 0.024], [1500, 40, 0.025],//   [0, 60, 0.006], [1000, 60, 0.012], [1200, 60, 0.014], [1500, 60, 0.015],//   [0, 80, 0.008], [1000, 80, 0.015], [1200, 80, 0.017], [1500, 80, 0.020],//   [0, 100, 0.015], [1000, 100, 0.022], [1200, 100, 0.026], [1500, 100, 0.032],],// },// {//   name: '数据3',//   zlevel: -10,//   type: 'surface',//   data: [[10, 20, 0.006], [100, 20, 0.009], [120, 20, 0.0095], [150, 20, 0.010],//   [10, 30, 0.016], [100, 40, 0.022], [120, 40, 0.024], [150, 40, 0.025],//   [10, 40, 0.006], [100, 60, 0.012], [120, 60, 0.014], [150, 60, 0.015],//   [10, 50, 0.008], [100, 80, 0.015], [120, 80, 0.017], [150, 80, 0.020],//   [10, 60, 0.015], [100, 100, 0.022], [120, 100, 0.026], [150, 100, 0.032],],// }]}const stystr = {width: '400px',height: '400px'}// useEffect(() => {//   var myChart = echarts.init(document.getElementById('main'))//   myChart.setOption(option)// })return (<div style={{ width: '100%', height: '450px', display: 'flex' }}><Myecharts id={'main'} style={stystr} option={option}></Myecharts><Myecharts id={'main1'} style={stystr} option={option2}></Myecharts>{/* <div style={stystr} id='main'></div> */}</div>)
}export default Chart

这里面有我测试两个3D的例子,重点是那两个例子需要的数据格式,我已经模拟出来了也处理了,这个可以看一下其它的直接照搬就行

封装不完善,自己需要可以把配置也封装进去

http://www.cadmedia.cn/news/9828.html

相关文章:

  • 青海省建设网站多少钱建网站的软件有哪些
  • 中企动力骗子公司广州网站优化公司排名
  • 网站手机版建设项目书故事型软文广告
  • 做ps的素材哪个网站长春网站优化流程
  • wordpress分类使用不同模板上海优化网站seo公司
  • 广东手机网站建设哪家专业线上如何推广自己的产品
  • 成都网站制作收费商品关键词举例
  • 中山建设厅网站首页中国国家培训网靠谱吗
  • 网络科技公司 网站建设站外引流推广渠道
  • 广东新闻联播2011东莞网络优化公司
  • 南宁网站建设业务员关键词查询工具包括哪些
  • 重庆网站建设只选承越最新国际新闻事件
  • my77731免费域名查询蚌埠seo外包
  • app官方安装下载优化设计答案六年级
  • 台州网站快速优化排名企业网站建设方案策划
  • 网站建设推广济南兴田德润优惠吗邳州网站开发
  • 公司查名网站百度q3财报减亏170亿
  • 做网站前狼雨的seo教程
  • wordpress如何安装网站主题美国最新新闻头条
  • 建设厅是做什么的seo建设者
  • 制作网站制作公司网址百度刷排名
  • 唯一做性视频的网站江苏网站seo
  • 深圳市住建局造价站莱芜seo
  • 企业网站建设中的常见问题网站源码下载
  • 电子商务网站策划书2000字线上如何做推广
  • 毕业设计网站代做多少钱成都最新数据消息
  • 网站建设需要java吗谷歌商店paypal官网下载
  • 克拉玛依网站建设常用的五种网络营销工具
  • 南通网站制作推广福州百度开户多少钱
  • 广东广州自己建网站公司百度竞价排名名词解释