资讯详情

echarts入门使用及常用配置

一、入门使用:

附上官方入门教程Documentation - Apache ECharts 教程分三步没什么好简化的。让我们在这里谈谈预防措施

1.下载echarts

下载echarts当您可以根据需要下载单独的文件或整个源代码包时,源代码包含更全面的内容,但我需要下载源代码包的地图

2.echarts引用

老版本的echarts引入比较复杂,建议直接使用新版本(具体旧版本是哪个版本我忘了...),官网下载最新就好了。

3.绘制图表

绘制图表时,需要创建固定宽度和高度的图表dom 附上官方提供的示例

<!DOCTYPE html>   <html>  <head>     <meta charset="utf-8">       <title>ECharts</title>     <!-- 引入 echarts.js -->     <script src="echarts.min.js></script> </head> <body>       <!-- 为ECharts准备一个大小(宽高)的人Dom -->       <div id="main" style="width: 600px;height:400px;"></div>      <script type="text/javascript">         // 基于准备dom,初始化echarts实例         var myChart = echarts.init(document.getElementById('main'));           // 指定图表的配置项和数据            var option = {                title: {                    text: 'ECharts 入门示例'                },                tooltip: {},                legend: {                    data:[销量]                },                xAxis: {                    data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]                },                yAxis: {},                series: [{                    name: '销量',                    type: 'bar',                    data: [5, 20, 36, 10, 10, 20]                }]            };            // 使用新指定的配置项和数据显示图。         myChart.setOption(option);     </script> </body> </html>

二、常用配置

1.绘制统计图

确定图表的生成dom节点 var myChart = echarts.init(document.getElementById('main')); getElementById里是dom的id 然后是统计图的配置var option = {……}, 最后是绘制myChart.setOption(option); 而且每个统计图生成的时候都会有这三个部分,所以同类型的统计图可以生成包装成一种方法,避免了多个统计图一直命名的问题。

2.必要的配置项

若无坐标轴图,series项目必不可少,series里type和data必不可少。

series: [     {         type: 'pie',         data: [             {value: 335, name: 直接访问,             {value: 310, name: 邮件营销,         ],     } ]

除了坐标轴,如果有坐标轴series外,xAxis和yAxis也是必要的,xAxis为X轴配置信息,yAxis为y轴配置信息。

xAxis: [     {         type: 'category',         data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],     } ], yAxis: [     {         type: 'value'     } ], series: [     {         type: 'bar',         data: [10, 52, 200, 334, 390, 330, 220]     } ]

3.常用示例及配置项注释

饼图

series: [     {         name: ////tooltip里的{a},即鼠标移入提示框中的标题         type: 'pie,//类型         radius: '55%',//[0,’55%’]/’55%’两种写法,[0,‘55%’]0为内半径,挖空尺寸大于0即环形图,‘55%’为外半径;只写‘55%’为纯饼图         center: ['50%', 数组的第一项是横坐标,第二项是纵坐标。         data: [//值             {value: 335, name: 直接访问,             {value: 310, name: 邮件营销,             {value: 234, name: 联盟广告,             {value: 135, name: 视频广告,             {value: 1548, name: 搜索引擎}         ],      } ]

柱状图

var option = { grid: {///边距以x轴和外轴为标准     left:50,     top:75,     bottom:30,     right:30, }, xAxis: {     type: 'value',//‘value’为值'category'为类目,type柱状图是横向还是纵向决定     name:单位:个,//坐标轴名称     nameLocation:’end,//名称位置start、middle/center、end对应坐标轴的开始位置、中间位置和结束位置,start和middle容易与刻度值重叠     axisLine:{///坐标轴         lineStyle:{///坐标轴样式             color:'#fff'         }     },     splitLine:{// 坐标轴在 grid 区域中的分隔线。         show:false,     },     axisTick:{//坐标轴刻度线         show:false,         alignWithLabel:true,//刻度是否与标签对齐,true为对齐         length:5.//刻度长度     },     axisLabel:{ ///坐标轴刻度标签         margin:18, ////         fontFamily:'Adobe 黑体 Std',         color:'#c8d7dc',         fontSize:14,         rotate:45.//尺度标签旋转角度     } }, yAxis: {//y轴配置项与x轴相同     // gridIndex:1,     type: 'category',     data: 大众汽车, 长城汽车, '海科', 奔驰汽车, 高德,     splitLine:{         show:false,     },     axisLine:{         lineStyle:{             color:'#fff'         }     },     axisTick:{         show:false     },     axisLabel:{         fontFamily:'Adobe 黑体 Std',         fontSize:14,         color:'#c8d7dc',     } }, series: [     {         name: '2011年',         type: 'bar',         label:{///图形上的文本标签             show:true,             position:‘top,//标签位置,常用的有top、insideBottom和inside             distance: 15.//距离图形元素,positon为inside时不生效             color:’#fff’ ,//文字颜色,以下是常用的文本设置             fontStyle: "normal",             fontWeight: "bold",             fontSize: 14,             align: "center",             verticalAlign: "bottom",             textBorderColor: "rgba(57, 41, 41, 1)" ,             textBorderWidth: 2,             textShadowColor: "rgba(0, 0, 0, 1)" ,             textShadowBlur: 7.5,             textShadowOffsetX: 5,             textShadowOffsetY: 3,             backgroundColr: {//背景设置‘#fff’可直接设置背景色,{image:}可设置背景图
                image: "xxx/xxx/xxx.png",
            },
            borderWidth: 1, //文字块边框宽度
            borderColor: "rgba(33, 27, 27, 1)" , //文字块边框颜色
            padding: [5, 19, 5, 19] , //文字块内边距,上右下左
        },
        barWidth: 18,//柱条的宽度,不设时自适应。
        data: [18203, 23489, 29034, 104970, 131744]
    },
]
};

地图

var myChart = echarts.init(document.getElementById(id),theme);
myChart.showLoading();//统计图加载动画

$.get('js/map/json/province/jiangsu.json', function (geoJson) {//引入地图文件,在源码包的map文件夹下有各省份、中国和世界地图

myChart.hideLoading();//关闭加载动画

echarts.registerMap('jiangsu', geoJson);

var option = {
    visualMap: {//图例设置,可根据值给区域赋颜色
        min: 800,
        max: 50000,
        text: ['High', 'Low'],
        realtime: false,
        calculable: true,
        inRange: {
            color: [ '#1f2c5b','#294594']
        }
    },
    series: [
        {
            name: '物联网卡全省分布',
            type: 'map',
            mapType: 'jiangsu', // 自定义扩展图表类型
            label: {
                show: true,
                position: ['50%', '50%'],
                color:'#d6bc46',
                fontSize:18,
                fontWeight:'bold'

            },
            itemStyle:{
                areaColor:'#294594',
                borderColor:'#00c7f0'
            },
            data: [//各区域及赋值,不同省份对应的区域不同,可以百度搜索或者查看json文件的信息,百度可能更方便
                {name: '徐州市', value: 20057.34},
                {name: '宿迁市', value: 15477.48},
                {name: '连云港市', value: 31686.1},
                {name: '淮安市', value: 6992.6},
                {name: '盐城市', value: 44045.49},
                {name: '扬州市', value: 37659.78},
                {name: '泰州市', value: 45180.97},
                {name: '南京市', value: 55204.26},
                {name: '镇江市', value: 21900.9},
                {name: '常州市', value: 4918.26},
                {name: '无锡市', value: 5881.84},
                {name: '苏州市', value: 4178.01},
                {name: '南通市', value: 806.98}
            ],
        }
    ]
};

myChart.setOption(option);

公用

legend: {
    orient: 'vertical',//图例列表的布局朝向。Vertical竖向排列。Horizontal水平排布列
    right: 45,//边距left、top、right、bottom
    bottom:50,
    data: ['车辆服务', '智能抄表', '移动媒体', '生产环境'],//值
    icon:'circle',// 图例项的 icon,常用的有'circle','rect', 'roundRect','triangle','pin'或者用'image://http://xxx.xxx.xxx/a/b.png'的形式,用png或者svg显示图例
    textStyle: {
        // color:['#105b6e', '#5ab1ef', '#ffb980', '#d87a80','#000']
        color:'#feffff'
    }
},
tooltip: {
trigger: 'item',//item主要在无类目轴的图表中使用(如散点图、饼图),axis用在有类目轴的图表中使用(如柱状图)
formatter: '{b}<br/>{c} (p / km2)',
//模板变量有 {a}, {b},{c},{d},{e},分别表示系列名,数据名,数据值等。 在 trigger 为 'axis' 的时候,会有多个系列的数据,此时可以通过 {a0}, {a1}, {a2} 这种后面加索引的方式表示系列的索引。 不同图表类型下的 {a},{b},{c},{d} 含义不一样。 其中变量{a}, {b}, {c}, {d}在不同图表类型下代表数据含义为:
//折线(区域)图、柱状(条形)图、K线图 : {a}(系列名称),{b}(类目值),{c}(数值), {d}(无)
//散点图(气泡)图 : {a}(系列名称),{b}(数据名称),{c}(数值数组), {d}(无)
//地图 : {a}(系列名称),{b}(区域名称),{c}(合并数值), {d}(无)
//饼图、仪表盘、漏斗图: {a}(系列名称),{b}(数据项名称),{c}(数值), {d}(百分比)

},

主题

最后说一下主题 可以自定义一组主题颜色,这个是一组渐变色

var theme = {
    color:{
        type: 'linear',
        x: 1,
        y: 0,
        x2: 0,
        y2: 0,
        colorStops: [{
            offset: 0, color: '#00c7f0' // 0% 处的颜色
        }, {
            offset: 1, color: '#1c2d53' // 100% 处的颜色
        }],
        globalCoord: false // 缺省为 false
    },
}

一组纯色

var theme = {
    color:[ '#1f2c5b','#294594']
}

使用方法:

var myChart = echarts.init(document.getElementById(id),theme);

对应的图例文字颜色可设置为主题颜色或统一一个颜色

legend: {
    orient: 'vertical',
    right: 45,
    bottom:50,
    data: icon_list,
    icon:'circle',
    textStyle: {
        // color:['’, '', '', '','']
        color:'#feffff'
    }
},

标签: 105b热过载继电器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台