echarts_series总结

echarts_series总结

echarts官网实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>echarts</title>
    <script src="./static/echarts.min.js"></script>
</head>
<body>
    <div id="main" style="width:600px;height:400px;"></div>
    <script>
        var myecharts=echarts.init(document.getElementById("main"));

        var option={
            title:{
                text:'标题',
                textStyle:{
                    color:'red',
                    fontSize:'12',
                    fontFamily:'fangsong',
                    fontWeight:'400',
                    fontStyle:'normal',

                },

                subtext:'副标题',
                subtextStyle:{
                    color:'red',
                },

                align:'center',
                x:'right',
                y:'top',
                textAlign:'center',
                padding:[5,10,5,10],
                itemGap:'4',
            },


            tooltip:{
                trigger:'axis',
                // item  主要在散点图,饼图等无类目轴的图表中使用。
                // axis  坐标轴触发,主要在柱状图,折线图等会使用类目轴的图表中使用
                // none   什么都不触发
                axisPointer:{  // 坐标轴指示器配置项。
                    type:'line',
                    // line   直线指示器
                    //  'shadow' 阴影指示器
                    // 'none' 无指示器
                    // 'cross' 十字准星指示器。其实是种简写,表示启用两个正交的轴的 axisPointer。

                }

            },


            legend:{
                orient:'vertical',
                x:'right',
                y:'top',
                padding:[5,10,5,10],
                itemGap: '10',   // 图例间隔
                itemWidth:'25',   // 图例宽度
                itemHeight:'14',   //高度
                textStyle:{
                    fontSize:'12',
                    fontFamily: 'fangsong',

                },
                data:[],
                formatter:function(name){
                    return name+'%'
                }




            },


            xAxis:{
                name:'x轴名称',
                type:'category',  // value
                position:'top',   // x轴的位置,top, botttom
                nameLocation:'end',  //坐标轴名称显示位置
                // start,center,end
                axisLabel:{
                    interval:'0',  // 0是显示所有坐标轴标签名称
                    rotate:'90',
                    fontSize:'12',
                },

                axisTick:{
                    alignWithLabel:'true',
                    length:'5',
                },

                nameGap:'12',

                nameTextStyle:{
                    align:'left',
                },

                max:'',
                min:'',
                splitNumber:'5',
            },

            yAxis:{
                name:'y轴',
                position:'left',
                type:'value',
                namelocation:'end',
                nameTextStyle: {
                    color:'red',
                    fontSize:'12',
                    align:'left',

                },
                nameGap:'12',
                nameRotate:'90',
                min:'',
                max:'',
                splitNumber: '5',
                interval:'5',
            },



            // radar 是雷达图坐标系组件
            radar: {
                // shape: 'circle',
                name: {
                    textStyle: {
                        color: '#fff',
                        backgroundColor: '#999',
                        borderRadius: 3,
                        padding: [3, 5]
                    }
                },
                indicator: [
                    { name: '销售(sales)', max: 6500},
                    { name: '管理(Administration)', max: 16000},
                    { name: '信息技术(Information Techology)', max: 30000},
                    { name: '客服(Customer Support)', max: 38000},
                    { name: '研发(Development)', max: 52000},
                    { name: '市场(Marketing)', max: 25000}
                ]
            },






            series:[{
                name:'折线图',
                type:'line',  // 折线图
                stack:'',    // 数据堆叠
                data:[1,2,3,4,5,]

            }, {
                name: '柱状图',
                type: 'bar',
                barWidth: '40',  // 柱条的宽度
                barGap: '30%',  //  不同系列的柱间距离,为百分比(如 '30%',表示柱子宽度的 30%)。

            },{
                name:'饼图',
                type:'pie',
                minAngle:'30',  // 最小的扇区角度(0 ~ 360),用于防止某个值过小导致扇区太小影响交互
                roseType:"",
                //是否展示成南丁格尔图,通过半径区分数据大小。可选择两种模式:
                // 'radius' 扇区圆心角展现数据的百分比,半径展现数据的大小。
                // 'area' 所有扇区圆心角相同,仅通过半径展现数据大小。
                data:[{value:10,name:'a'},{value:11,name:'b'}]

            },{
                name:'散点图',
                type:'scatter',
                symbolSize:'',  // 散点大小




            },{
                name:'带有涟漪的散点图',
                type:'effectScatter',
                rippleEffect:{   // 涟漪特效相关配置。
                    scale:10    // 控制涟漪大小
                },



            },{
                name:'雷达图',
                type:'radar',
                areaStyle:{},   // 区域填充样式。
                data : [
                    {
                        value : [4300, 10000, 28000, 35000, 50000, 19000],
                        name : '预算分配(Allocated Budget)'
                    },
                    {
                        value : [5000, 14000, 28000, 31000, 42000, 21000],
                        name : '实际开销(Actual Spending)'
                    }
                ]



            }




            ]


        };

        myecharts.setOption(option);

    </script>

</body>
</html>

首先列举echarts官网实例中最常用的几种图形的series:

简单折线图:

option = {
    xAxis: {
        type: 'category',
        data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
    },
    yAxis: {
        type: 'value'
    },
    series: [{
        data: [820, 932, 901, 934, 1290, 1330, 1320],
        type: 'line'
    }]
};

简单柱状图:

option = {
    xAxis: {
        type: 'category',
        data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
    },
    yAxis: {
        type: 'value'
    },
    series: [{
        data: [120, 200, 150, 80, 70, 110, 130],
        type: 'bar',
        showBackground: true,
        backgroundStyle: {
            color: 'rgba(220, 220, 220, 0.8)'
        }
    }]
};

多条柱状图

 series: [
        {
            name: 'Forest',
            type: 'bar',
            barGap: 0,
            label: labelOption,
            data: [320, 332, 301, 334, 390]
        },
        {
            name: 'Steppe',
            type: 'bar',
            label: labelOption,
            data: [220, 182, 191, 234, 290]
        },
        {
            name: 'Desert',
            type: 'bar',
            label: labelOption,
            data: [150, 232, 201, 154, 190]
        },
        {
            name: 'Wetland',
            type: 'bar',
            label: labelOption,
            data: [98, 77, 101, 99, 40]
        }
    ]

堆叠柱状图

 series: [
        {
            name: '直接访问',
            type: 'bar',
            data: [320, 332, 301, 334, 390, 330, 320]
        },
        {
            name: '邮件营销',
            type: 'bar',
            stack: '广告',
            data: [120, 132, 101, 134, 90, 230, 210]
        },
        {
            name: '联盟广告',
            type: 'bar',
            stack: '广告',
            data: [220, 182, 191, 234, 290, 330, 310]
        },
        {
            name: '视频广告',
            type: 'bar',
            stack: '广告',
            data: [150, 232, 201, 154, 190, 330, 410]
        },]

柱状and折线图

 xAxis: [
        {
            type: 'category',
            data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
            axisPointer: {
                type: 'shadow'
            }
        }
    ],
    yAxis: [
        {
            type: 'value',
            name: '水量',
            min: 0,
            max: 250,
            interval: 50,
            axisLabel: {
                formatter: '{value} ml'
            }
        },
        {
            type: 'value',
            name: '温度',
            min: 0,
            max: 25,
            interval: 5,
            axisLabel: {
                formatter: '{value} °C'
            }
        }
    ],
    series: [
        {
            name: '蒸发量',
            type: 'bar',
            data: [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3]
        },
        {
            name: '降水量',
            type: 'bar',
            data: [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3]
        },
        {
            name: '平均温度',
            type: 'line',
            yAxisIndex: 1,
            data: [2.0, 2.2, 3.3, 4.5, 6.3, 10.2, 20.3, 23.4, 23.0, 16.5, 12.0, 6.2]
        }
    ]
};

在这里插入图片描述
饼图
没有x和y轴,

var data = genData(50);

option = {
    title: {
        text: '同名数量统计',
        subtext: '纯属虚构',
        left: 'center'
    },
    tooltip: {
        trigger: 'item',
        formatter: '{a} <br/>{b} : {c} ({d}%)'
    },
    legend: {
        type: 'scroll',
        orient: 'vertical',
        right: 10,
        top: 20,
        bottom: 20,
        data: data.legendData,

        selected: data.selected
    },
    series: [
        {
            name: '姓名',
            type: 'pie',
            radius: '55%',    // 的半径
            center: ['40%', '50%'], // 中心(圆心)坐标,数组的第一项是横坐标,第二项是纵坐标。
            data: data.seriesData,
            emphasis: {
                itemStyle: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                }
            }
        }
    ]
};




function genData(count) {
    var nameList = [
        '赵', '钱', '孙', '李', '周', '吴', '郑', '王', '冯', '陈', '褚', '卫', '蒋', '沈', '韩', '杨', '朱', '秦', '尤', '许', '何', '吕', '施', '张', '孔', '曹', '严', '华', '金', '魏', '陶', '姜', '戚', '谢', '邹', '喻', '柏', '水', '窦', '章', '云', '苏', '潘', '葛', '奚', '范', '彭', '郎', '鲁', '韦', '昌', '马', '苗', '凤', '花', '方', '俞', '任', '袁', '柳', '酆', '鲍', '史', '唐', '费', '廉', '岑', '薛', '雷', '贺', '倪', '汤', '滕', '殷', '罗', '毕', '郝', '邬', '安', '常', '乐', '于', '时', '傅', '皮', '卞', '齐', '康', '伍', '余', '元', '卜', '顾', '孟', '平', '黄', '和', '穆', '萧', '尹', '姚', '邵', '湛', '汪', '祁', '毛', '禹', '狄', '米', '贝', '明', '臧', '计', '伏', '成', '戴', '谈', '宋', '茅', '庞', '熊', '纪', '舒', '屈', '项', '祝', '董', '梁', '杜', '阮', '蓝', '闵', '席', '季', '麻', '强', '贾', '路', '娄', '危'
    ];
    var legendData = [];
    var seriesData = [];
    var selected = {};
    for (var i = 0; i < count; i++) {
        name = Math.random() > 0.65
            ? makeWord(4, 1) + '·' + makeWord(3, 0)
            : makeWord(2, 1);
        legendData.push(name);
        seriesData.push({
            name: name,
            value: Math.round(Math.random() * 100000)
        });
        selected[name] = i < 6;
    }

    return {
        legendData: legendData,
        seriesData: seriesData,
        selected: selected
    };

    function makeWord(max, min) {
        var nameLen = Math.ceil(Math.random() * max + min);
        var name = [];
        for (var i = 0; i < nameLen; i++) {
            name.push(nameList[Math.round(Math.random() * nameList.length - 1)]);
        }
        return name.join('');
    }
}




其中饼图的数据形式是

data: [
                {value: 335, name: '直接访问'},
                {value: 310, name: '邮件营销'},
                {value: 274, name: '联盟广告'},
                {value: 235, name: '视频广告'},
                {value: 400, name: '搜索引擎'}

雷达图

option = {
    title: {
        text: '基础雷达图'
    },
    tooltip: {},
    legend: {
        data: ['预算分配(Allocated Budget)', '实际开销(Actual Spending)']
    },
    radar: {
        // shape: 'circle',
        name: {
            textStyle: {
                color: '#fff',
                backgroundColor: '#999',
                borderRadius: 3,
                padding: [3, 5]
            }
        },
        indicator: [
		// 雷达图的指示器,用来指定雷达图中的多个变量(维度)
            { name: '销售(sales)', max: 6500},
            { name: '管理(Administration)', max: 16000},
            { name: '信息技术(Information Techology)', max: 30000},
            { name: '客服(Customer Support)', max: 38000},
            { name: '研发(Development)', max: 52000},
            { name: '市场(Marketing)', max: 25000}
        ]
    },
    series: [{
        name: '预算 vs 开销(Budget vs spending)',
        type: 'radar',
        // areaStyle: {normal: {}},
        data: [
            {
                value: [4300, 10000, 28000, 35000, 50000, 19000],
                name: '预算分配(Allocated Budget)'
            },
            {
                value: [5000, 14000, 28000, 31000, 42000, 21000],
                name: '实际开销(Actual Spending)'
            }
        ]
    }]
};

在这里插入图片描述

  • 11
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值