用vscode绘制条形图和折线图

以绘制条形图为例

可以分为五大步骤

第一步:首先引入ECharts脚本

第二步:有了脚本后,就可以为ECharts准备一个具备大小或者宽高的DOM,我们俗称为容器

第三步:准备好DOM后,我们就要初始化Echarts图表了

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

第四步,我们可以开始编写最主要的身体部分了

第五步:使用刚指定的配置项和数据显示图表

这五步完成我们就做完了,运行看结果就可以了

折线图99%和条形图是一样的,我们只需把第四步里的bar改为line就可以了,因为我们是条形图所以要把x、y调换一下就ok了

最后的效果图如下

全部代码如下

条形图

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <script src="js/echarts.js"></script>
</head>

<body>
    <div id="main" style="width: 600px; height: 400px"></div>
    <script type="text/javascript">
        var myChart = echarts.init(document.getElementById("main"));
        var option = {
            title: {
                text: '它是主标题',
                subtext: '它是副标题',
            },
            tooltip: {
                trigger: 'axis',
            },
            legend: {
                data: ['成绩1', '成绩2'],
            },
            toolbox: {
                show: true,
                feature: {
                    mark: { show: true },
                    dataView: { show: true, readOnly: false },
                    magicType: { show: true, type: ['line', 'bar'] },
                    restore: { show: true },
                    saveAsImage: { show: true },
                },
            },
            calculable: true,
            xAxis: [
                {
                    type: 'value', 
                    boundaryGap: [0, 0.1],
                },
            ],
            yAxis: [
                {
                    type: 'category',
                    data: ['小明', '小黄', '小红', '小蓝'],
                },
            ],
            series: [
                {
                    name: '成绩1',
                    type: 'bar',
                    markPoint: { 
            data: [
              {
                type: 'max', name: '最大值'
              },{
                type: 'min', name: '最小值'
              }
            ]
          },
          markLine: { 
            data: [
              {
                type: 'average', name: '平均值'
              }
            ]
          },
          label: { 
            show: true, 
            rotate: 60, 
            position: 'top' 
          },
          barWidth: '30%', 
                    data: [66, 55, 85, 77],
                },
                {
                    name: '成绩2',
                    type: 'bar',
                    markPoint: { 
            data: [
              {
                type: 'max', name: '最大值'
              },{
                type: 'min', name: '最小值'
              }
            ]
          },
          markLine: { 
            data: [
              {
                type: 'average', name: '平均值'
              }
            ]
          },
          label: { 
            show: true, 
            rotate: 60, 
            position: 'top' 
          },
          barWidth: '30%', 
                    data: [90, 68, 53, 30],
                },
            ],
        };
        myChart.setOption(option);
    </script>
</body>
</html>

折线图

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <script src="js/echarts.js"></script>
</head>

<body>
    <div id="main" style="width: 600px; height: 400px"></div>
    <script type="text/javascript">
        var myChart = echarts.init(document.getElementById("main"));
        var option = {
            title: {
                text: '它是主标题',
                subtext: '它是副标题',
            },
            tooltip: {
                trigger: 'axis',
            },
            legend: {
                data: ['成绩1', '成绩2'],
            },
            toolbox: {
                show: true,
                feature: {
                    mark: { show: true },
                    dataView: { show: true, readOnly: false },
                    magicType: { show: true, type: ['line', 'bar'] },
                    restore: { show: true },
                    saveAsImage: { show: true },
                },
            },
            calculable: true,
            yAxis: [
                {
                    type: 'value', 
                    boundaryGap: [0, 0.1],
                },
            ],
            xAxis: [
                {
                    type: 'category',
                    data: ['小明', '小黄', '小红', '小蓝'],
                },
            ],
            series: [
                {
                    name: '成绩1',
                    type: 'line',
                    markPoint: { 
            data: [
              {
                type: 'max', name: '最大值'
              },{
                type: 'min', name: '最小值'
              }
            ]
          },
          markLine: { 
            data: [
              {
                type: 'average', name: '平均值'
              }
            ]
          },
          label: { 
            show: true, 
            rotate: 60, 
            position: 'top' 
          },
          barWidth: '30%', 
                    data: [66, 55, 85, 77],
                },
                {
                    name: '成绩2',
                    type: 'line',
                    markPoint: { 
            data: [
              {
                type: 'max', name: '最大值'
              },{
                type: 'min', name: '最小值'
              }
            ]
          },
          markLine: { 
            data: [
              {
                type: 'average', name: '平均值'
              }
            ]
          },
          label: { 
            show: true, 
            rotate: 60, 
            position: 'top' 
          },
                    data: [90, 68, 53, 30],
                },
            ],
        };
        myChart.setOption(option);
    </script>
</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值