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

ECharts图表图例11

ECharts图例(legend)是用于解释图表中不同系列数据的标识。

图例主要作用是提高图表可读性。比如在折线图展示天气温变化时,通过图例能快速区分各天对应的折线和柱状。

它有多种配置选项。可以设置位置,像放在图表的顶部、底部、左侧或右侧;还能调整样式,包括文字颜色、字体大小等。并且能够实现点击图例来控制对应系列的显示或隐藏,方便用户聚焦部分数据进行分析。

图例:

代码:

1.<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <script src="js/echarts.js"></script>

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

</head>

<body>

    <div id="main" style="width: 900px; height:600px"></div>

    <script type="text/javascript">

        var myChart= echarts.init(document.getElementById("main"));

        var option = {

            color:["red","green","blue","yellow","grey","#FA8072"],

            tooltip:{

                trigger:'axis'

            },

            legend:{

                data:['蒸发量','降水量','最低气温','最高气温']

            },

            toolbox:{

                show:true,

                feature:{

                    mark:{show:true},

                    dataView:{show:true},

                    magicType:{show:true, type:['line','bar']},

                    restore:{show:true},

                    saveAsImage:{show:true}

                }

            },

            xAxis:[

                {

                    type:'category',

                    position:'bottom',

                    boundaryGap:true,

                    show:true,

                    axisLine:{

                        linestyle:{

                            color:'green',

                            type:'solid',

                            width:2    

                        }

                    },

                    axisTick:{

                        show:true,

                        length:10,

                        linestyle:{

                            color:'red',

                            type:'solid',

                            width:2

                        }

                    },

                    axisLabel:{

                        show:true,

                        interval:'auto',

                        rotate:45,

                        margin:8,

                        formatter:'{value}月',

                        textStyle:{

                            color:'blue',

                            fontFamily:'sans-serif',

                            fontSize:15,

                            fontstyle:'italic',

                            fontweight:'bold'

                        }

                    },

                    splitLine:{

                        show:true,

                        linestyle:{

                            color:'#483d8b',

                            type:'dashed',

                            width:1

                        }

                    },

                    splitArea:{

                        show:true,

                        areaStyle:{

                            color:['rgba(144,238,144,0.3)','rgba(135,200,250,0.3)']

                        }

                    },

                    data:[

                    '1','2','3','4','5',

                    {

                        value:'6',

                        textstyle:{

                            color:'red',

                            fontSize:30,

                            fontStyle:'normal',

                            fontWeight:'bold'

                        }

                    },

                    '7','8','9', '10','11','12'

                ]

            }

        ],

        yAxis:[

            {

                type:'value',

                position:'left',

                boundaryGap:[0,0.1],

                axisLine:{

                    show:true,

                    lineStyle:{

                        color:'red',

                        type:'dashed',

                        width:2

                    }

                },

                axisTick:{

                    show:true,

                    length:10,

                    linestyle:{

                        color:'green',

                        type:'solid',

                        width:2

                    }

                },

                axisLabel:{

                    show:true,

                    interval:'auto',

                    rotate:-45,

                    margin:18,

                    formatter:'{value}ml',

                    textStyle:{

                        color:'#1e90ff',

                        fontFamily:'verdana',

                        fontSize:10,

                        fontStyle:'normal',

                        fontweight:'bold'

                    }

                },

                splitLine:{

                    show:true,

                    linestyle:{

                        color:'#483d8b',

                        type:'dotted',

                        width:2

                    }

                },

                splitArea:{

                    show:true,

                    areaStyle:{

                        color:['rgba(205,92,92,0.3)',

                        'rgba(255,215,0,0.3)']

                    }

                }

            },

            {

                type:'value',

                splitNumber:10,

                axisLabel:{

                    formatter:function(value){

                        return value+'℃'

                    }

                },

splitLine:{
show:false
}
}
],
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',
smooth:true,
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.23]
},
{
name:'最高气温',type:'line',
smooth:true,
yAxisIndex:1,
data:[12.0,12.2,13.3,14.5,16.3,18.2,28.3,33.4,31.0,24.5,18.0,16.2]
}
]
};
myChart.setOption(option);
</script>
</body>

</html >

9920c2e3e6fb40cd9fc2b8967e041d7b.jpg

 结果:

bc17cf6b2ad349ad9d8c917ca4768015.jpg

 

2.<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <script src="js/echarts.js"></script>

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

</head>

<body>

    <div id="main" style="width: 900px; height:600px"></div>

    <script type="text/javascript">

        var myChart= echarts.init(document.getElementById("main"));

        var option ={

            grid:{

                show:true,

                x:15,y:66,

                width:'93%',height:'80%',

                x2:100,y2:100,

                borderWidth:5,

                borderColor:'blue',

                bordergroundColor:'#f7f7f7',

            },

            title:{

                text:'未来一周气温变化',

            },

            tooltip:{

                trigger:'axis'

            },

            legend:{

                data:['最高气温','最低气温']

            },

            toolbox:{

                show:true,

                feature:{

                    mark:{show:true},

                    dataView:{show:true,readOnly:false},

                    magicType:{show:true,type:['line','bar']},

                    restore:{show:true},

                    saveAsImage:{show:true}

                }

            },

            calulable:true,

            xAxis:[

                {

                    show:false,

                    smooth:true,

                    type:'category',

                    boundaryGap:false,

                    data:['周一','周二','周三','周四','周五','周六','周日']

                }

            ],

            yAxis:[

                {

                    show:false,

                    type:'value',

                    axisLabel:{formatter:'{value} ℃'}

                }

            ],

            series:[

                {

                    name:'最高气温',smooth:true,

                    type:'line',data:[11,11,15,13,12,13,10],

                    markPoint:{

                        data:[

                            {type:'max',name:'最大

值'},

                            {type:'min',name:'最小值'}

                        ]

                    },

                    markLine:{

                        data:[

                            {type:'average',name:'平均值'}

                        ]

                    }

                },

                {

                    name:'最低气温',smooth:true,

                    type:'line',data:[1,-2,2,5,3,2,0],

                    markPoint:{

                        data:[

                            {name:'周最低',value:-2,xAxis:1,yAxis:-1.5}

                        ]

                    },

                    markLine:{

                        data:[

                            {type:'average',name:'平均值'}

                        ]

                    }

                }

            ]

        };

        myChart.setOption(option);

    </script>

</body>

</html>

df355f57e7bc402c9cb1e54341609564.jpg

 结果截图:

bb4dcbcb319e44959efc917193d9a01c.jpg

 

 


http://www.mrgr.cn/news/57294.html

相关文章:

  • 【iOS】YYModel
  • rk3568创建基于Ubuntu18.04交叉编译遇到的坑
  • 使用Maven前的简单准备
  • VScode远程开发之remote 远程开发(二)
  • 智慧产权,专业守护 —— 全影知产专利保护机构
  • 斯坦福大学团队总结大语言模型在生物学领域的进展,助力AI解决复杂生物学问题|顶刊精析·24-10-21
  • 解决cad找不到vcruntime140_1.dll,无法继续执行代码的6种方法
  • 《YOLO 目标检测》—— YOLO v3 详细介绍
  • 拟态UI3.0个人页
  • django模板相关配置
  • 一个将.Geojson文件转成shapefile和kml文件的在线页面工具(续)
  • hive数据库,表操作
  • 前缀和 有图文 超详细整理通俗易懂
  • OpenEular + KVM + virt-manager 笔记
  • Python小程序 - 替换文件内容
  • 论文精读:TiC-CLIP: Continual Training of CLIP Models(三)
  • pdf表格读取和筛选
  • ArrayList 源码分析
  • 论文精读:TiC-CLIP: Continual Training of CLIP Models(二)
  • 搜维尔科技:使用CyberGlove数据手套控制机械手遥操作拿鸡蛋
  • LPDDR4/LPDDR4X讲解(一)
  • 香橙派、树莓派与Jetson的选择攻略:为您的项目找到最佳匹配
  • 【BJWC2008】王之财宝Gate Of Babylon——超详解
  • 时间同步协议有哪些?
  • 【redis】基础指令|数据结构总览|单线程架构分析
  • 为您的 Raspberry Pi 项目选择正确的实时操作系统(RTOS)