echarts在react中的引入使用(俩种方法)

简介: echarts在react中的引入使用(俩种方法)

一.第一步 先看看你的echarts版本。
小于5.0版本的可以使用以下方法:

先安装:

npm i echarts@4.0.4 --save

npm i echarts-for-react --save

1.原始echarts

导入

import React from 'react'
// 引入 ECharts 主模块
import echarts from 'echarts/lib/echarts'
// 引入饼图
import 'echarts/lib/chart/bar'
// 引入提示框和标题组件
import 'echarts/lib/component/tooltip';
import 'echarts/lib/component/title';
import 'echarts/lib/component/legend';
import 'echarts/lib/component/markPoint';
复制代码
实例化echarts

componentDidMount() {

    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementById('main'));
    // 绘制图表
    myChart.setOption({
        title: { text: 'ECharts 入门示例' },
        tooltip: {},
        xAxis: {
            data: ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
        },
        yAxis: {},
        series: [{
            name: '销量',
            type: 'bar',
            data: [5, 20, 36, 10, 10, 20]
        }]
    });
}

复制代码
使用

render() {

    return (
        <div id="main" style={{ width: 400, height: 400 }}></div>
    );

}
复制代码
2.echarts-for-react

import React, { PureComponent } from "react";
import ReactEcharts from "echarts-for-react";
export default class Simple extends PureComponent {
getOption = () => {

return {
  title: {
    text: "堆叠区域图",
  },
  tooltip: {
    trigger: "axis",
  },
  legend: {
    data: ["邮件营销", "联盟广告", "视频广告"],
  },
  toolbox: {
    feature: {
      saveAsImage: {},
    },
  },
  grid: {
    left: "3%",
    right: "4%",
    bottom: "3%",
    containLabel: true,
  },
  xAxis: [
    {
      type: "category",
      boundaryGap: false,
      data: ["周一", "周二", "周三", "周四", "周五", "周六", "周日"],
    },
  ],
  yAxis: [
    {
      type: "value",
    },
  ],
  series: [
    {
      name: "邮件营销",
      type: "line",
      stack: "总量",
      areaStyle: { normal: {} },
      data: [120, 132, 101, 134, 90, 230, 210],
    },
    {
      name: "联盟广告",
      type: "line",
      stack: "总量",
      areaStyle: { normal: {} },
      data: [220, 182, 191, 234, 290, 330, 310],
    },
    {
      name: "视频广告",
      type: "line",
      stack: "总量",
      areaStyle: { normal: {} },
      data: [150, 232, 201, 154, 190, 330, 410],
    },
  ],
};

};
render() {

let code =
  "<ReactEcharts \n" +
  "  option={this.getOption()} \n" +
  "  style={{height: '350px', width: '100%'}}  \n" +
  "  className='react_for_echarts' />";
return (
  <div className="examples">
    <div className="parent">
      <label>
        {" "}
        render a Simple echart With <strong>option and height</strong>:{" "}
      </label>
      <ReactEcharts
        option={this.getOption()}
        style={{ height: "350px", width: "100%" }}
        className="react_for_echarts"
      />
      <label> code below: </label>
      <pre>
        <code>{code}</code>
      </pre>
    </div>
  </div>
);

}
}

复制代码
5.0以上的暂时只能使用原始的e-charts引入。
npm i echarts --save

import React, { Component } from "react";
// 注意这里 跟4.0相比 只是这里使用了require,使用import直接报错..
const echarts = require("echarts");
class Charts extends Component {
constructor(props) {

super(props);
this.state = {
  option: {
    title: {
      text: "ECharts 入门示例",
    },
    tooltip: {},
    legend: {
      data: ["销量"],
    },
    xAxis: {
      data: ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"],
    },
    yAxis: {},
    series: [
      {
        name: "销量",
        type: "bar",
        data: [5, 20, 36, 10, 10, 20],
      },
    ],
  },
};

}
componentDidMount() {

// 基于准备好的dom,初始化echarts实例
const MyChart = echarts.init(document.getElementById("main")); // 绘制图表
let option = {
  title: {
    text: "ECharts 入门示例",
  },
  tooltip: {},
  legend: {
    data: ["销量"],
  },
  xAxis: {
    data: ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"],
  },
  yAxis: {},
  series: [
    {
      name: "销量",
      type: "bar",
      data: [5, 20, 36, 10, 10, 20],
    },
  ],
};
MyChart.setOption(option);

}
render() {

return (
  <div>
        <div id="main" style={{ width: 400, height: 400 }}></div>
  </div>
);

}
}

export default Charts;
复制代码

另外附上E-charts的全部的配置

theme = {

// 全图默认背景
// backgroundColor: 'rgba(0,0,0,0)',

// 默认色板
color: ['#ff7f50','#87cefa','#da70d6','#32cd32','#6495ed',
        '#ff69b4','#ba55d3','#cd5c5c','#ffa500','#40e0d0',
        '#1e90ff','#ff6347','#7b68ee','#00fa9a','#ffd700',
        '#6699FF','#ff6666','#3cb371','#b8860b','#30e0e0'],

// 图表标题
title: {
    x: 'left',                 // 水平安放位置,默认为左对齐,可选为:
                               // 'center' ¦ 'left' ¦ 'right'
                               // ¦ {number}(x坐标,单位px)
    y: 'top',                  // 垂直安放位置,默认为全图顶端,可选为:
                               // 'top' ¦ 'bottom' ¦ 'center'
                               // ¦ {number}(y坐标,单位px)
    //textAlign: null          // 水平对齐方式,默认根据x设置自动调整
    backgroundColor: 'rgba(0,0,0,0)',
    borderColor: '#ccc',       // 标题边框颜色
    borderWidth: 0,            // 标题边框线宽,单位px,默认为0(无边框)
    padding: 5,                // 标题内边距,单位px,默认各方向内边距为5,
                               // 接受数组分别设定上右下左边距,同css
    itemGap: 10,               // 主副标题纵向间隔,单位px,默认为10,
    textStyle: {
        fontSize: 18,
        fontWeight: 'bolder',
        color: '#333'          // 主标题文字颜色
    },
    subtextStyle: {
        color: '#aaa'          // 副标题文字颜色
    }
},

// 图例
legend: {
    orient: 'horizontal',      // 布局方式,默认为水平布局,可选为:
                               // 'horizontal' ¦ 'vertical'
    x: 'center',               // 水平安放位置,默认为全图居中,可选为:
                               // 'center' ¦ 'left' ¦ 'right'
                         
                               // ¦ {number}(x坐标,单位px)
    y: 'top',                  // 垂直安放位置,默认为全图顶端,可选为:
                               // 'top' ¦ 'bottom' ¦ 'center'
                               // ¦ {number}(y坐标,单位px)
    //也可以不使用x、y,使用left,right,top,bottom:20或'20%'为值的属性表示,
    //涉及到x、y的地方都可以使用此方法尝试
    backgroundColor: 'rgba(0,0,0,0)',
    borderColor: '#ccc',       // 图例边框颜色
    borderWidth: 0,            // 图例边框线宽,单位px,默认为0(无边框)
    padding: 5,                // 图例内边距,单位px,默认各方向内边距为5,
                               // 接受数组分别设定上右下左边距,同css
    itemGap: 10,               // 各个item之间的间隔,单位px,默认为10,
                               // 横向布局时为水平间隔,纵向布局时为纵向间隔
    itemWidth: 20,             // 图例图形宽度
    itemHeight: 14,            // 图例图形高度
    textStyle: {
        color: '#333'          // 图例文字颜色
    }
},

// 值域
dataRange: {
    orient: 'vertical',        // 布局方式,默认为垂直布局,可选为:
                               // 'horizontal' ¦ 'vertical'
    x: 'left',                 // 水平安放位置,默认为全图左对齐,可选为:
                               // 'center' ¦ 'left' ¦ 'right'
                               // ¦ {number}(x坐标,单位px)
    y: 'bottom',               // 垂直安放位置,默认为全图底部,可选为:
                               // 'top' ¦ 'bottom' ¦ 'center'
                               // ¦ {number}(y坐标,单位px)
    backgroundColor: 'rgba(0,0,0,0)',
    borderColor: '#ccc',       // 值域边框颜色
    borderWidth: 0,            // 值域边框线宽,单位px,默认为0(无边框)
    padding: 5,                // 值域内边距,单位px,默认各方向内边距为5,
                               // 接受数组分别设定上右下左边距,同css
    itemGap: 10,               // 各个item之间的间隔,单位px,默认为10,
                               // 横向布局时为水平间隔,纵向布局时为纵向间隔
    itemWidth: 20,             // 值域图形宽度,线性渐变水平布局宽度为该值 * 10
    itemHeight: 14,            // 值域图形高度,线性渐变垂直布局高度为该值 * 10
    splitNumber: 5,            // 分割段数,默认为5,为0时为线性渐变
    color:['#1e90ff','#f0ffff'],//颜色 
    //text:['高','低'],         // 文本,默认为数值文本
    textStyle: {
        color: '#333'          // 值域文字颜色
    }
},

toolbox: {
    orient: 'horizontal',      // 布局方式,默认为水平布局,可选为:
                               // 'horizontal' ¦ 'vertical'
    x: 'right',                // 水平安放位置,默认为全图右对齐,可选为:
                               // 'center' ¦ 'left' ¦ 'right'
                               // ¦ {number}(x坐标,单位px)
    y: 'top',                  // 垂直安放位置,默认为全图顶端,可选为:
                               // 'top' ¦ 'bottom' ¦ 'center'
                               // ¦ {number}(y坐标,单位px)
    color : ['#1e90ff','#22bb22','#4b0082','#d2691e'],
    backgroundColor: 'rgba(0,0,0,0)', // 工具箱背景颜色
    borderColor: '#ccc',       // 工具箱边框颜色
    borderWidth: 0,            // 工具箱边框线宽,单位px,默认为0(无边框)
    padding: 5,                // 工具箱内边距,单位px,默认各方向内边距为5,
                               // 接受数组分别设定上右下左边距,同css
    itemGap: 10,               // 各个item之间的间隔,单位px,默认为10,
                               // 横向布局时为水平间隔,纵向布局时为纵向间隔
    itemSize: 16,              // 工具箱图形宽度
    featureImageIcon : {},     // 自定义图片icon
    featureTitle : {
        mark : '辅助线开关',
        markUndo : '删除辅助线',
        markClear : '清空辅助线',
        dataZoom : '区域缩放',
        dataZoomReset : '区域缩放后退',
        dataView : '数据视图',
        lineChart : '折线图切换',
        barChart : '柱形图切换',
        restore : '还原',
        saveAsImage : '保存为图片'
    }
},

// 提示框
tooltip: {
    trigger: 'item',           // 触发类型,默认数据触发,见下图,可选为:'item' ¦ 'axis'
    showDelay: 20,             // 显示延迟,添加显示延迟可以避免频繁切换,单位ms
    hideDelay: 100,            // 隐藏延迟,单位ms
    transitionDuration : 0.4,  // 动画变换时间,单位s
    backgroundColor: 'rgba(0,0,0,0.7)',     // 提示背景颜色,默认为透明度为0.7的黑色
    borderColor: '#333',       // 提示边框颜色
    borderRadius: 4,           // 提示边框圆角,单位px,默认为4
    borderWidth: 0,            // 提示边框线宽,单位px,默认为0(无边框)
    padding: 5,                // 提示内边距,单位px,默认各方向内边距为5,
                               // 接受数组分别设定上右下左边距,同css
    axisPointer : {            // 坐标轴指示器,坐标轴触发有效
        type : 'line',         // 默认为直线,可选为:'line' | 'shadow'
        lineStyle : {          // 直线指示器样式设置
            color: '#48b',
            width: 2,
            type: 'solid'
        },
        shadowStyle : {                       // 阴影指示器样式设置
            width: 'auto',                   // 阴影大小
            color: 'rgba(150,150,150,0.3)'  // 阴影颜色
        }
    },
    textStyle: {
        color: '#fff'
    }
},

// 区域缩放控制器
dataZoom: {
    orient: 'horizontal',      // 布局方式,默认为水平布局,可选为:
                               // 'horizontal' ¦ 'vertical'
    // x: {number},            // 水平安放位置,默认为根据grid参数适配,可选为:
                               // {number}(x坐标,单位px)
    // y: {number},            // 垂直安放位置,默认为根据grid参数适配,可选为:
                               // {number}(y坐标,单位px)
    // width: {number},        // 指定宽度,横向布局时默认为根据grid参数适配
    // height: {number},       // 指定高度,纵向布局时默认为根据grid参数适配
    backgroundColor: 'rgba(0,0,0,0)',       // 背景颜色
    dataBackgroundColor: '#eee',            // 数据背景颜色
    fillerColor: 'rgba(144,197,237,0.2)',   // 填充颜色
    handleColor: 'rgba(70,130,180,0.8)'     // 手柄颜色
},

// 网格
grid: {
    x: 80,
    y: 60,
    x2: 80,
    y2: 60,
    // width: {totalWidth} - x - x2,
    // height: {totalHeight} - y - y2,
    backgroundColor: 'rgba(0,0,0,0)',
    borderWidth: 1,
    borderColor: '#ccc'
},

// 类目轴
categoryAxis: {
    position: 'bottom',    // 位置
    nameLocation: 'end',   // 坐标轴名字位置,支持'start' | 'end'
    boundaryGap: true,     // 类目起始和结束两端空白策略
    axisLine: {            // 坐标轴线
        show: true,        // 默认显示,属性show控制显示与否
        lineStyle: {       // 属性lineStyle控制线条样式
            color: '#48b',
            width: 2,
            type: 'solid'
        }
    },
    axisTick: {            // 坐标轴小标记
        show: true,       // 属性show控制显示与否,默认不显示
        interval: 'auto',
        // onGap: null,
        inside : false,    // 控制小标记是否在grid里 
        length :5,         // 属性length控制线长
        lineStyle: {       // 属性lineStyle控制线条样式
            color: '#333',
            width: 1
        }
    },
    axisLabel: {           // 坐标轴文本标签,详见axis.axisLabel
        show: true,
        interval: 'auto',
        rotate: 0,
        margin: 8,
        // formatter: null,
        textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
            color: '#333'
        }
    },
    splitLine: {           // 分隔线
        show: true,        // 默认显示,属性show控制显示与否
        // onGap: null,
        lineStyle: {       // 属性lineStyle(详见lineStyle)控制线条样式
            color: ['#ccc'],
            width: 1,
            type: 'solid'
        }
    },
    splitArea: {           // 分隔区域
        show: false,       // 默认不显示,属性show控制显示与否
        // onGap: null,
        areaStyle: {       // 属性areaStyle(详见areaStyle)控制区域样式
            color: ['rgba(250,250,250,0.3)','rgba(200,200,200,0.3)']
        }
    }
},

// 数值型坐标轴默认参数
valueAxis: {
    position: 'left',      // 位置
    nameLocation: 'end',   // 坐标轴名字位置,支持'start' | 'end'
    nameTextStyle: {},     // 坐标轴文字样式,默认取全局样式
    boundaryGap: [0, 0],   // 数值起始和结束两端空白策略
    splitNumber: 5,        // 分割段数,默认为5
    axisLine: {            // 坐标轴线
        show: true,        // 默认显示,属性show控制显示与否
        lineStyle: {       // 属性lineStyle控制线条样式
            color: '#48b',
            width: 2,
            type: 'solid'
        }
    },
    axisTick: {            // 坐标轴小标记
        show: false,       // 属性show控制显示与否,默认不显示
        inside : false,    // 控制小标记是否在grid里 
        length :5,         // 属性length控制线长
        lineStyle: {       // 属性lineStyle控制线条样式
            color: '#333',
            width: 1
        }
    },
    axisLabel: {           // 坐标轴文本标签,详见axis.axisLabel
        show: true,
        rotate: 0,
        margin: 8,
        // formatter: null,
        textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
            color: '#333'
        }
    },
    splitLine: {           // 分隔线
        show: true,        // 默认显示,属性show控制显示与否
        lineStyle: {       // 属性lineStyle(详见lineStyle)控制线条样式
            color: ['#ccc'],
            width: 1,
            type: 'solid'
        }
    },
    splitArea: {           // 分隔区域
        show: false,       // 默认不显示,属性show控制显示与否
        areaStyle: {       // 属性areaStyle(详见areaStyle)控制区域样式
            color: ['rgba(250,250,250,0.3)','rgba(200,200,200,0.3)']
        }
    }
},

polar : {
    center : ['50%', '50%'],    // 默认全局居中
    radius : '75%',
    startAngle : 90,
    splitNumber : 5,
    name : {
        show: true,
        textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
            color: '#333'
        }
    },
    axisLine: {            // 坐标轴线
        show: true,        // 默认显示,属性show控制显示与否
        lineStyle: {       // 属性lineStyle控制线条样式
            color: '#ccc',
            width: 1,
            type: 'solid'
        }
    },
    axisLabel: {           // 坐标轴文本标签,详见axis.axisLabel
        show: false,
        textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
            color: '#333'
        }
    },
    splitArea : {
        show : true,
        areaStyle : {
            color: ['rgba(250,250,250,0.3)','rgba(200,200,200,0.3)']
        }
    },
    splitLine : {
        show : true,
        lineStyle : {
            width : 1,
            color : '#ccc'
        }
    }
},

// 柱形图默认参数
bar: {
    barMinHeight: 0,          // 最小高度改为0
    // barWidth: null,        // 默认自适应
    barGap: '30%',            // 柱间距离,默认为柱形宽度的30%,可设固定值
    barCategoryGap : '20%',   // 类目间柱形距离,默认为类目间距的20%,可设固定值
    itemStyle: {
        normal: {
            // color: '各异',
            barBorderColor: '#fff',       // 柱条边线
            barBorderRadius: 0,           // 柱条边线圆角,单位px,默认为0
            barBorderWidth: 1,            // 柱条边线线宽,单位px,默认为1
            label: {
                show: false
                // position: 默认自适应,水平布局为'top',垂直布局为'right',可选为
                //           'inside'|'left'|'right'|'top'|'bottom'
                // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
            }
        },
        emphasis: {
            // color: '各异',
            barBorderColor: 'rgba(0,0,0,0)',   // 柱条边线
            barBorderRadius: 0,                // 柱条边线圆角,单位px,默认为0
            barBorderWidth: 1,                 // 柱条边线线宽,单位px,默认为1
            label: {
                show: false
                // position: 默认自适应,水平布局为'top',垂直布局为'right',可选为
                //           'inside'|'left'|'right'|'top'|'bottom'
                // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
            }
        }
    }
},

// 折线图默认参数
line: {
    itemStyle: {
        normal: {
            // color: 各异,
            label: {
                show: false
                // position: 默认自适应,水平布局为'top',垂直布局为'right',可选为
                //           'inside'|'left'|'right'|'top'|'bottom'
                // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
            },
            lineStyle: {
                width: 2,
                type: 'solid',
                shadowColor : 'rgba(0,0,0,0)', //默认透明
                shadowBlur: 5,
                shadowOffsetX: 3,
                shadowOffsetY: 3
            }
        },
        emphasis: {
            // color: 各异,
            label: {
                show: false
                // position: 默认自适应,水平布局为'top',垂直布局为'right',可选为
                //           'inside'|'left'|'right'|'top'|'bottom'
                // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
            }
        }
    },
    //smooth : false,
    //symbol: null,         // 拐点图形类型
    symbolSize: 2,          // 拐点图形大小
    //symbolRotate : null,  // 拐点图形旋转控制
    showAllSymbol: false    // 标志图形默认只有主轴显示(随主轴标签间隔隐藏策略)
},

// K线图默认参数
k: {
    // barWidth : null          // 默认自适应
    // barMaxWidth : null       // 默认自适应 
    itemStyle: {
        normal: {
            color: '#fff',          // 阳线填充颜色
            color0: '#00aa11',      // 阴线填充颜色
            lineStyle: {
                width: 1,
                color: '#ff3200',   // 阳线边框颜色
                color0: '#00aa11'   // 阴线边框颜色
            }
        },
        emphasis: {
            // color: 各异,
            // color0: 各异
        }
    }
},

// 散点图默认参数
scatter: {
    //symbol: null,      // 图形类型
    symbolSize: 4,       // 图形大小,半宽(半径)参数,当图形为方向或菱形则总宽度为symbolSize * 2
    //symbolRotate : null,  // 图形旋转控制
    large: false,        // 大规模散点图
    largeThreshold: 2000,// 大规模阀值,large为true且数据量>largeThreshold才启用大规模模式
    itemStyle: {
        normal: {
            // color: 各异,
            label: {
                show: false
                // position: 默认自适应,水平布局为'top',垂直布局为'right',可选为
                //           'inside'|'left'|'right'|'top'|'bottom'
                // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
            }
        },
        emphasis: {
            // color: '各异'
            label: {
                show: false
                // position: 默认自适应,水平布局为'top',垂直布局为'right',可选为
                //           'inside'|'left'|'right'|'top'|'bottom'
                // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
            }
        }
    }
},

// 雷达图默认参数
radar : {
    itemStyle: {
        normal: {
            // color: 各异,
            label: {
                show: false
            },
            lineStyle: {
                width: 2,
                type: 'solid'
            }
        },
        emphasis: {
            // color: 各异,
            label: {
                show: false
            }
        }
    },
    //symbol: null,         // 拐点图形类型
    symbolSize: 2           // 可计算特性参数,空数据拖拽提示图形大小
    //symbolRotate : null,  // 图形旋转控制
},

// 饼图默认参数
pie: {
    center : ['50%', '50%'],    // 默认全局居中
    radius : [0, '75%'],
    clockWise : false,          // 默认逆时针
    startAngle: 90,
    minAngle: 0,                // 最小角度改为0
    selectedOffset: 10,         // 选中是扇区偏移量
    itemStyle: {
        normal: {
            // color: 各异,
            borderColor: '#fff',
            borderWidth: 1,
            label: {
                show: true,
                position: 'outer'
                // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
            },
            labelLine: {
                show: true,
                length: 20,
                lineStyle: {
                    // color: 各异,
                    width: 1,
                    type: 'solid'
                }
            }
        },
        emphasis: {
            // color: 各异,
            borderColor: 'rgba(0,0,0,0)',
            borderWidth: 1,
            label: {
                show: false
                // position: 'outer'
                // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
            },
            labelLine: {
                show: false,
                length: 20,
                lineStyle: {
                    // color: 各异,
                    width: 1,
                    type: 'solid'
                }
            }
        }
    }
},

map: {
    mapType: 'china',   // 各省的mapType暂时都用中文
    mapLocation: {
        x : 'center',
        y : 'center'
        // width    // 自适应
        // height   // 自适应
    },
    showLegendSymbol : true,       // 显示图例颜色标识(系列标识的小圆点),存在legend时生效
    itemStyle: {
        normal: {
            // color: 各异,
            borderColor: '#fff',
            borderWidth: 1,
            areaStyle: {
                color: '#ccc'//rgba(135,206,250,0.8)
            },
            label: {
                show: false,
                textStyle: {
                    color: 'rgba(139,69,19,1)'
                }
            }
        },
        emphasis: {                 // 也是选中样式
            // color: 各异,
            borderColor: 'rgba(0,0,0,0)',
            borderWidth: 1,
            areaStyle: {
                color: 'rgba(255,215,0,0.8)'
            },
            label: {
                show: false,
                textStyle: {
                    color: 'rgba(139,69,19,1)'
                }
            }
        }
    }
},

force : {
    // 数据map到圆的半径的最小值和最大值
    minRadius : 10,
    maxRadius : 20,
    density : 1.0,
    attractiveness : 1.0,
    // 初始化的随机大小位置
    initSize : 300,
    // 向心力因子,越大向心力越大
    centripetal : 1,
    // 冷却因子
    coolDown : 0.99,
    // 分类里如果有样式会覆盖节点默认样式
    itemStyle: {
        normal: {
            // color: 各异,
            label: {
                show: false
                // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
            },
            nodeStyle : {
                brushType : 'both',
                color : '#f08c2e',
                strokeColor : '#5182ab'
            },
            linkStyle : {
                strokeColor : '#5182ab'
            }
        },
        emphasis: {
            // color: 各异,
            label: {
                show: false
                // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
            },
            nodeStyle : {},
            linkStyle : {}
        }
    }
},

chord : {
    radius : ['65%', '75%'],
    center : ['50%', '50%'],
    padding : 2,
    sort : 'none', // can be 'none', 'ascending', 'descending'
    sortSub : 'none', // can be 'none', 'ascending', 'descending'
    startAngle : 90,
    clockWise : false,
    showScale : false,
    showScaleText : false,
    itemStyle : {
        normal : {
            label : {
                show : true
                // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
            },
            lineStyle : {
                width : 0,
                color : '#000'
            },
            chordStyle : {
                lineStyle : {
                    width : 1,
                    color : '#666'
                }
            }
        },
        emphasis : {
            lineStyle : {
                width : 0,
                color : '#000'
            },
            chordStyle : {
                lineStyle : {
                    width : 2,
                    color : '#333'
                }
            }
        }
    }
},

island: {
    r: 15,
    calculateStep: 0.1  // 滚轮可计算步长 0.1 = 10%
},

markPoint : {
    symbol: 'pin',         // 标注类型
    symbolSize: 10,        // 标注大小,半宽(半径)参数,当图形为方向或菱形则总宽度为symbolSize * 2
    //symbolRotate : null, // 标注旋转控制
    itemStyle: {
        normal: {
            // color: 各异,
            // borderColor: 各异,     // 标注边线颜色,优先于color 
            borderWidth: 2,            // 标注边线线宽,单位px,默认为1
            label: {
                show: true,
                position: 'inside' // 可选为'left'|'right'|'top'|'bottom'
                // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
            }
        },
        emphasis: {
            // color: 各异
            label: {
                show: true
                // position: 'inside'  // 'left'|'right'|'top'|'bottom'
                // textStyle: null     // 默认使用全局文本样式,详见TEXTSTYLE
            }
        }
    }
},

markLine : {
    // 标线起始和结束的symbol介绍类型,如果都一样,可以直接传string
    symbol: ['circle', 'arrow'],  
    // 标线起始和结束的symbol大小,半宽(半径)参数,当图形为方向或菱形则总宽度为symbolSize * 2
    symbolSize: [2, 4],
    // 标线起始和结束的symbol旋转控制
    //symbolRotate : null,
    itemStyle: {
        normal: {
            // color: 各异,           // 标线主色,线色,symbol主色
            // borderColor: 随color,     // 标线symbol边框颜色,优先于color 
            borderWidth: 2,          // 标线symbol边框线宽,单位px,默认为2
            label: {
                show: false,
                // 可选为 'start'|'end'|'left'|'right'|'top'|'bottom'
                position: 'inside',  
                textStyle: {         // 默认使用全局文本样式,详见TEXTSTYLE
                    color: '#333'
                }
            },
            lineStyle: {
                // color: 随borderColor, // 主色,线色,优先级高于borderColor和color
                // width: 随borderWidth, // 优先于borderWidth
                type: 'solid',
                shadowColor : 'rgba(0,0,0,0)', //默认透明
                shadowBlur: 5,
                shadowOffsetX: 3,
                shadowOffsetY: 3
            }
        },
        emphasis: {
            // color: 各异
            label: {
                show: false
                // position: 'inside' // 'left'|'right'|'top'|'bottom'
                // textStyle: null    // 默认使用全局文本样式,详见TEXTSTYLE
            },
            lineStyle : {}
        }
    }
},

textStyle: {
    decoration: 'none',
    fontFamily: 'Arial, Verdana, sans-serif',
    fontFamily2: '微软雅黑',    // IE8- 字体模糊并且不支持不同字体混排,额外指定一份
    fontSize: 12,
    fontStyle: 'normal',
    fontWeight: 'normal'
},

// 默认标志图形类型列表
symbolList : [
  'circle', 'rectangle', 'triangle', 'diamond',
  'emptyCircle', 'emptyRectangle', 'emptyTriangle', 'emptyDiamond'
],
loadingText : 'Loading...',
// 可计算特性配置,孤岛,提示颜色
calculable: false,              // 默认关闭可计算特性
calculableColor: 'rgba(255,165,0,0.6)',       // 拖拽提示边框颜色
calculableHolderColor: '#ccc', // 可计算占位提示颜色
nameConnector: ' & ',
valueConnector: ' : ',
animation: true,
animationThreshold: 2500,       // 动画元素阀值,产生的图形原素超过2500不出动画
addDataAnimation: true,         // 动态数据接口是否开启动画效果
animationDuration: 2000,
animationEasing: 'ExponentialOut'    //BounceOut

}
复制代码

作者: Bill 本文地址: http://biaoblog.cn/info?id=1611903360000

版权声明: 本文为原创文章,版权归 biaoblog 个人博客 所有,欢迎分享本文,转载请保留出处,谢谢!

相关文章
|
1月前
|
前端开发 Scala
Scala并发编程的react、loop方法详解
在这个例子中,`MyActor`会无限循环接收和处理消息。当收到一个字符串消息时,它会打印出"Received: "加上消息内容。如果收到其他类型的消息,它会打印"Unknown message"。
16 1
|
2月前
|
前端开发 Scala
Scala并发编程的react、loop方法详解
在这个例子中,`MyActor`会无限循环接收和处理消息。当收到一个字符串消息时,它会打印出"Received: "加上消息内容。如果收到其他类型的消息,它会打印"Unknown message"。
15 0
|
3月前
|
前端开发 JavaScript 开发者
在React中,如何利用生命周期方法管理组件的状态和行为?
【5月更文挑战第29天】在React中,如何利用生命周期方法管理组件的状态和行为?
36 3
|
3月前
|
缓存 前端开发 JavaScript
React和Next.js开发常见的HTTP请求方法
React和Next.js开发常见的HTTP请求方法
45 0
|
3月前
|
前端开发
【专栏】在 create-react-app 中集成 less/sass 预处理器和 react-css-modules 的方法
【4月更文挑战第29天】本文介绍了在 create-react-app 中集成 less/sass 预处理器和 react-css-modules 的方法。首先,通过 `npm` 安装 less 或 sass 依赖,然后修改 `config-overrides.js` 配置文件以支持 less/sass 编译。接着,详细阐述如何使用 less/sass 编写样式。再者,安装 react-css-modules 并配置 webpack,使能样式模块化。最后,展示了如何结合使用 less/sass 和 react-css-modules,以提升前端开发的效率和代码质量。
285 0
|
3月前
|
前端开发 JavaScript 定位技术
Docusaurus框架——react+antd+echarts自定义mdx生成图表代码解释文档
Docusaurus框架——react+antd+echarts自定义mdx生成图表代码解释文档
83 0
|
3月前
|
存储 人工智能 开发框架
【AI大模型应用开发】【AutoGPT系列】0. AutoGPT概念及原理介绍 - Agent开发框架及ReAct方法
【AI大模型应用开发】【AutoGPT系列】0. AutoGPT概念及原理介绍 - Agent开发框架及ReAct方法
141 0
|
3月前
|
前端开发 JavaScript
React生命周期方法在实际开发中的应用场景有哪些?
【4月更文挑战第6天】 React 生命周期方法应用于数据获取、订阅管理、渲染逻辑处理、用户交互响应、性能优化、资源清理、强制更新、错误处理、动画实现、代码分割、服务端渲染、路由处理、依赖注入和集成第三方库。它们帮助控制组件行为和性能,但现代开发推荐使用Hooks替代部分生命周期方法。
43 0
|
3月前
|
前端开发 中间件 数据安全/隐私保护
React路由进阶方法
React路由进阶方法
42 1
|
3月前
|
数据可视化 前端开发 JavaScript
react+datav+echarts实现可视化数据大屏
最近有点闲,就学习了下react,没想到就把react学完了,觉得还不错,就打算出一把react+datav的简易版可视化数据大屏供大家做个参考
350 2
react+datav+echarts实现可视化数据大屏

热门文章

最新文章