eCharts公用配置及方法

本文介绍eCharts图表库的实用配置与方法,包括加载、清除图表实例、适应容器宽高、下载图片等操作,并提供了示例代码,帮助开发者快速上手。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

eCharts公用配置及方法

文章目录:

  • 正在加载使用方法
  • 清除图表实例方法
  • 刷新图表宽高方法(适应容器大小)
  • 下载生成的图片到本地
  • 圆点绘制(悬浮提示框中)
  • 文字左对齐(悬浮提示框)
  • 纵坐标刻度梯度量设置

正在加载方法

var myEchart = echarts.init( document.getElementById(domId) );

myEchart.showLoading(); //显示正在加载

var option = {};

myEchart.hideLoading(); //隐藏正在加载

myEchart.setOption(option);

备注:请求数据前执行showLoading(),数据请求成功后执行hideLoading()


清除图表实例方法

var myEchart = echarts.init( document.getElementById(domId) );

var option = {};

myEchart.setOption(option);

myEchart.clear();   //清除图表实例

备注:清空当前实例,会移除实例中所有的组件和图表。清空后调用 getOption() 方法返回一个{}空对象。


刷新图表宽高方法(适应容器大小)

var myEchart = echarts.init( document.getElementById(domId) );

var option = {};

myEchart.setOption(option);

myEchart.resize();  //自动适应容器大小

备注:指定图表宽高时,需要传入参数在opts

(opts?: {
    width?: number|string,  //可显式指定实例宽度,单位为像素。如果传入值为 null/undefined/'auto',则表示自动取 dom(实例容器)的宽度。
    height?: number|string, //可显式指定实例高度,单位为像素。如果传入值为 null/undefined/'auto',则表示自动取 dom(实例容器)的高度。
    silent?: boolean        //是否禁止抛出事件。默认为 false。
}) => ECharts

下载生成的图片到本地

/**
 * 保存当前eChart显示的图像,自动下载到本地
 * @param  {String} echart     eChart的上下文
 * @param  {String} imgType    图片扩展名类型
 */
function saveAsImage( echart, imgType ) {
    imgType = String( imgType );
    var imgData = echart.getDataURL({     // 保存到本地的图片数据
        type: imgType,                    // 图片扩展名类型
        pixelRatio: 2,
        backgroundColor: '#fff'           // 图片背景颜色
    });

    var newDate = new Date();
    var dateString = '';
    dateString += newDate.getFullYear();
    var month = Number( newDate.getMonth()+1 );
    month = month < 10 ? '0'+month : month;
    dateString += month;
    dateString += newDate.getDate();

    var filename = echart.getOption().title[0].text + '_' + dateString + '.' + imgType;

    var save_link = document.createElementNS('http://www.w3.org/1999/xhtml', 'a');
    save_link.href = imgData;
    save_link.download = filename;

    var event = document.createEvent('MouseEvents');
    event.initMouseEvent('click', true, false, document.defaultView, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
    save_link.dispatchEvent(event);
}

saveAsImage( myEchart, 'jpg' );

圆点绘制(悬浮提示框中)


tooltip: {
            trigger: 'axis',
            formatter: function( a ) {
                var color = '#78d5ce';
                var icon = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:9px;height:9px;background-color:' + color + '"></span>';
                return a[0].name+'<br/>'+icon+a[0].seriesName+':'+a[0].value
            }
        },

文字左对齐(悬浮提示框)

tooltip: {
            trigger: 'axis',
            textStyle:{
                align: 'left'   // 文字左对齐
            }
        }

纵坐标刻度梯度量设置

yAxis: [
            {
                type: 'value',
                name: json.zName,
                nameTextStyle: {
                    color: '#6d9269'
                },
//                 interval: 500,       // 刻度的量值,不设置自动处理
                axisTick: {         // 轴的刻度
                    show: false
                },
                axisLine: {         // 轴线
                    show: false
                },
                splitLine: {        // 竖线
                    show: false
                }
            }
        ]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值