Echarts实现数据可视化大屏

  1. #实例展示,使用echarts做一个电子地图,可视化大屏

最近因为工作原因,需要给销售部门做一个数据可视化大屏,显示产品的全国销售地图信息,做出来的样子就是下面这个样子。

可视化大屏

  1. 引入echarts.js模块
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>ECharts</title>
    <!-- 引入 echarts.js -->
    <script src="https://echarts.apache.org/examples/vendors/echarts/echarts-all-3.js"></script>
    <script src="https://echarts.apache.org/examples/vendors/echarts/map/js/china.js"></script>
</head>

这个地方引入了网上的echarts.js文件,还有中国地图。

  1. 创建一个Dom
<body>
    <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
    <div id = "id1" style="width: 1440px;height:980px;"></div>
    <script type="text/javascript">
        // 基于准备好的dom,初始化echarts实例
    var myChart1 = echarts.init(document.getElementById('id1'));

  1. 编写echarts可视化部分,使用var option={ }定义一个charts图表内容,backgroundColor:“ #2c343c“,表示背景颜色,title:{}后面的内容是表示标题
 var option1={
    backgroundColor: '#2c343c',
    title: {
        text: 'xx全国分布图',
        subtext: '仅个人用户',
        left: 'center',
        textStyle:{
            fontSize:25,
            color:"#fff"
        },
        subtestStyle:{
            fontSize:20,
            color:"#A68B36"}
          },
    tooltip: {
        trigger:"item",
        position:"inside",
             },
   '''
   

 5.可视化映射,

  
    visualMap: {
            min: 1,
            max: 500,
            text: ['销量Hight', '销量Low'],
            calculable: true,
            textStyle:{color:"#fff"},
            inRange: {
                color: ['lightskyblue', 'yellow', 'orangered']
            }
    },
    toolbox: {
        show: true,
        orient: 'vertical',
        itemSize:15,
        iconStyle:{
            color:'#fff',
            borderColor:"#666",
        },
        left:"1%",
        top: '8%',
        feature: {
            mark: {show: true},
            dataView: {show: true, readOnly: false},
            magicType: {show: true, type: ['line', 'bar', 'stack', 'tiled']},
            restore: {show: true},
            saveAsImage: {show: true}
                 }
            },

    grid:  [{left:"10%",
            top:"65%",
            bottom:"5%",
            right:"10%",
            show:'true',
            tooltip:{
                show:'true',
                trigger:"item",
            },
            textStyle: {color: '#fff'}
            },
            {left:"55%",
            top:"15%",
            bottom:"45%",
            right:"5%",
            textStyle:{color:"#fff"},
            tooltip:{
                show:'true',
                trigger:"item",
            }

            }],
    xAxis: [{
            data: ["0-10岁","10-20岁","20-30岁","30-40岁","40-50岁","50-60岁",
            "60-70岁","70-80岁","80岁以上","未知"],
            gridIndex:0,
            name:"年龄层(10岁每段)",
            axisLabel:{color:"#2A8339"},
            nameTextStyle: {
            color: '#fff'
        }
           },
           {
            data:['2008','2009','2010','2011','2012','2013','2014','2015','2016','2017','2018','2019','2020'],
            gridIndex:1,
            name:"时间/年",
            axisLabel:{color:"#2A8339"},
            nameTextStyle:{color:'#fff'}
           }],
    yAxis: [{name:"个人用户数量/人",
            axisLabel:{color:'#2A8339'},
            nameTextStyle: {color: '#fff'},
            gridIndex:0
           },
           {
            name:"产品年度销量/台",
            axisLabel:{color:'#2A8339'},
            nameTextStyle:{color:"#fff"},

            gridIndex:1

           }
           ],
    legend: {
        orient: 'horizontal',
        data:[{name:'A产品',icon:"circle"},
        {name:'B产品',icon:"circle"},
        {name:'C产品',icon:"circle"}],
        selectorLabel:{
            fontStyle:"normal",
            fontWeight:"bold",
            fontSize:"16"
        },
        left:"left",
        textStyle: {
            color: 'white',
            fontStyle:"normal",
        }},
    
    series: [
            {
                name: 'A产品',
                type: 'bar',
                color:'#003366',
                data: [64, 225, 241, 193, 211, 214,124,31,5,91],
                xAxisIndex:0,
                yAxisIndex:0,
            },
            {
                name:"B产品",
                type:"bar",
                color:'#006699',
                data:[24,97,128,117,97,136,70,34,3,83],
                xAxisIndex:0,
                yAxisIndex:0,
            },
            {
                name:"C产品",
                type:"bar",
                color:'#4cabce',
                data:[0,753,1041,201,17,1,1,0,1,152],
                xAxisIndex:0,
                yAxisIndex:0,
            },
            {
                name:"总数量",
                type:"line",
                color:'blue',
                data:[88,1075,1410,511,325,351,195,65,9,326],
                xAxisIndex:0,
                yAxisIndex:0,
            },
            {name:"A产品",
             type:"scatter",
             symbol:"pin",
             data:[24,77,112,176,168,68,107,127,91,166,157,96,29],
             xAxisIndex:1,
             yAxisIndex:1,
             symbolSize: function (data) {
            return Math.sqrt(data)*2;},
            color:"lightskyblue",
            },
            {name:"B产品",
             type:"scatter",
             symbol:"arrow",
             data:[0,0,1,0,99,133,81,75,74,113,101,74,38],
             xAxisIndex:1,
             yAxisIndex:1,
             symbolSize: function (data) {
            return Math.sqrt(data)*2;},
            color:"lightskyblue",
            },
            {name:"C产品",
             type:"scatter",
             symbol:"circle",
             data:[0,0,11,41,169,270,268,288,338,266,282,176,58],
             xAxisIndex:1,
             yAxisIndex:1,
             symbolSize: function (data) {
            return Math.sqrt(data)*2;},
            color:"lightskyblue",
            },
           {
                name:"三种分布",
                type:"pie",
                roseType:'angel',
                labelLine:{lineStyle:{color:"rgba(255,255,255,0.3)"}},
                center:["80%","75%"],
                radius:80,
                data:[{value:1399,name:"A产品"},
                     {value:789,name:"B产品"},
                     {value:2163,name:"C产品"}]
            },

        {
            name: 'A产品',
            type: 'map',
            layoutCenter:['25%',"35%"],
            layoutSize:700,
            tooltip:{trigger:"item"},
            mapType: 'china',
            roam: true,
            label: {
                    normal: {
                            show: true
                            },
                    emphasis: {
                             show: true
                               }
                    },
            data:[
                {name: '北京',value: 70 },
                {name: '天津',value: 21 },
                {name: '上海',value: 76 },
                {name: '重庆',value: 1 },
                {name: '河北',value:  65},
                {name: '河南',value: 88 },
                {name: '云南',value: 2 },
                {name: '辽宁',value: 146 },
                {name: '黑龙江',value:235},
                {name: '湖南',value: 2 },
                {name: '安徽',value:  6},
                {name: '山东',value:  129},
                {name: '新疆',value:  50},
                {name: '江苏',value: 64 },
                {name: '浙江',value: 16 },
                {name: '江西',value: 7 },
                {name: '湖北',value: 38 },
                {name: '广西',value:  15},
                {name: '甘肃',value: 9 },
                {name: '山西',value:  81},
                {name: '内蒙古',value: 21 },
                {name: '陕西',value: 68 },
                {name: '吉林',value: 43 },
                {name: '福建',value: 9 },
                {name: '贵州',value: 3 },
                {name: '广东',value: 69 },
                {name: '青海',value: 3 },
                {name: '西藏',value:  1},
                {name: '四川',value: 53 },
                {name: '宁夏',value: 6 },
                {name: '海南',value: 0 },
                {name: '台湾',value: 1 },
                {name: '香港',value: 1 },
                {name: '澳门',value:  0}
            ]
        },
        {
            name: 'B产品',
            type: 'map',
            layoutCenter:['25%',"35%"],
            layoutSize:700,
            tooltip:{trigger:"item"},
            mapType: 'china',
            label: {
                normal: {
                    show: true
                },
                emphasis: {
                    show: true
                }
            },
            data:[
                {name: '北京',value: 13 },
                {name: '天津',value: 25},
                {name: '上海',value: 12 },
                {name: '重庆',value: 1 },
                {name: '河北',value: 54},
                {name: '河南',value: 103 },
                {name: '云南',value: 3},
                {name: '辽宁',value: 66 },
                {name: '黑龙江',value:82},
                {name: '湖南',value: 1 },
                {name: '安徽',value: 1},
                {name: '山东',value: 136},
                {name: '新疆',value: 30},
                {name: '江苏',value: 14 },
                {name: '浙江',value: 2 },
                {name: '江西',value: 1 },
                {name: '湖北',value: 28 },
                {name: '广西',value: 8},
                {name: '甘肃',value: 10},
                {name: '山西',value:  19},
                {name: '内蒙古',value: 6 },
                {name: '陕西',value: 74},
                {name: '吉林',value: 31 },
                {name: '福建',value: 1},
                {name: '贵州',value: 2 },
                {name: '广东',value: 26 },
                {name: '青海',value: 0},
                {name: '西藏',value: 1 },
                {name: '四川',value: 35 },
                {name: '宁夏',value: 4},
                {name: '海南',value: 0 },
                {name: '台湾',value: 0 },
                {name: '香港',value: 10 },
                {name: '澳门',value:  0}
            ]
        },
        {
            name: 'C产品',
            type: 'map',
            layoutCenter:['25%',"35%"],
            layoutSize:700,
            tooltip:{trigger:"item"},
            mapType: 'china',
            label: {
                normal: {
                    show: true
                },
                emphasis: {
                    show: true
                }
            },
            data:[
                {name: '北京',value: 84 },
                {name: '天津',value: 23},
                {name: '上海',value: 115 },
                {name: '重庆',value: 11},
                {name: '河北',value: 81},
                {name: '河南',value: 294},
                {name: '云南',value: 9},
                {name: '辽宁',value: 64 },
                {name: '黑龙江',value:95},
                {name: '湖南',value: 70},
                {name: '安徽',value: 131},
                {name: '山东',value: 100},
                {name: '新疆',value: 11},
                {name: '江苏',value: 217},
                {name: '浙江',value: 129},
                {name: '江西',value: 56},
                {name: '湖北',value: 143},
                {name: '广西',value: 18},
                {name: '甘肃',value: 38},
                {name: '山西',value:  34},
                {name: '内蒙古',value: 32},
                {name: '陕西',value: 63},
                {name: '吉林',value: 17},
                {name: '福建',value: 33},
                {name: '贵州',value: 16},
                {name: '广东',value: 139},
                {name: '青海',value: 5},
                {name: '西藏',value: 3},
                {name: '四川',value: 129},
                {name: '宁夏',value: 5},
                {name: '海南',value: 1},
                {name: '台湾',value: 0},
                {name: '香港',value: 0},
                {name: '澳门',value: 1}
            ]
        }]
};

3.4 加载配置项及数据显示。
// 使用刚指定的配置项和数据显示图表。

    myChart1.setOption(option1);
    </script>
</body>
</html>

  • 3
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值