Echart初认识(一):如何实现第一个echarts图

Echart有python的代码版本,也有自己写html的版本,这里介绍自己写html的简单使用过程。

echarts官方给出了不同方式绘制图例,其中下载源代码,引入文件(标签式单模块引入)和模块化单文件引入是较为常用的方式,其区别在于:引入文件,在写好的图例中,别人使用时,同样需要源文件和配置路径;模块化文件引入,再写好的图例中,别人使用时,不需要其他文件,传送html源文件即可得到需要的效果。推荐模块化文件引入写echarts图例,这里引入的是一个网址链接,设置好路径之后,不需要额外的其他操作。下面,分别介绍两种方法的简单引入(此博客主要适用于没有html基础的小白,可以快速入手echarts绘制图例)。

1 标签式单模块引入

    此类方法是指,需要下载源代码的,在绘制的echarts图例中,引入源文件中的文件;写好的html文件,再传递给其他人时,需要使用者同样有源代码,并且修改路径,方可使用。

源代码下载

Echart官方网址:https://echarts.baidu.com/

在官网下载源代码:https://www.echartsjs.com/download.html

一个简单的例子

官方教程:https://echarts.baidu.com/tutorial.html#5%20%E5%88%86%E9%92%9F%E4%B8%8A%E6%89%8B%20ECharts

红色框内传入下载的源代码包中的文件

之后按照教程走尽可以啦。这里给一个可实现的代码案例:绘制丁格蓝图

<!DOCTYPE html>
<html>
<head>
    <meta charset="gbk">
    <title>ECharts</title>
    <!-- 引入 echarts.js -->
    <script src="incubator-echarts-4.2.1\dist\echarts.min.js"></script>
</head>
<body>
    <h1>广告饼图</h1>
    <!--<p>下面绘制条形图展现不同种类衣服的销售情况,并进行分析</p>-->
    <!-- 为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 = {
            backgroundColor:'#2c343c',
            visualMap:{
                show:false,
                min:80,
                max:600,
                inRange:{
                    colorLightness:[0,1]
                }
            },
            series:[
                {
                    name:'访问来源',
                    type: 'pie',
                    radius: '55%',
                    data:[
                        {value:235, name:'视频广告'},
                        {value:274, name:'联盟广告'},
                        {value:310, name:'邮件营销'},
                        {value:335, name:'直接访问'},
                        {value:400, name:'搜索引擎'}
                    ],
                    roseType:'angle',
                    label:{
                        normal:{
                            textStyle:{
                                color: 'rgba(255, 255, 255, 0.3)'
                            }
                        }
                    },
                    labelLine:{
                        normal:{
                            lineStyle:{
                                color: 'rgba(255, 255, 255, 0.3)'
                            }
                        }
                    },
                    itemStyle:{
                        normal:{
                            color:'#c23531',
                            shadowBlur:200,
                            shadowColor:'rgba(0, 0, 0, 0.5)'
                        }
                    }
                }
            ]
       };
    myChart.setOption(option);
    </script>

</body>
</html>

注意:在写html代码中特别要注意格式和字符的正确,否则在网页上面无法正确打开。

2 模块化单文件引入

    这里介绍的就是直接在html文件中写入echarts的url,然后写入路径,就可以很方便地传输使用。其官方链接:模块化单文件引入。下面直接给一个折线图动态延迟的html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Echarts</title>
</head>
<body>
    <div id="main" style="width: 600px;height:400px;"></div>
    <script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
    <script type="text/javascript">
        //路径配置
        require.config({
            paths:{
                echarts: 'http://echarts.baidu.com/build/dist'
            }
        });
        //入口使用
        require(
            [
                'echarts',
                'echarts/chart/bar',
                 // 使用柱状图就加载bar模块,按需加载
                'echarts/chart/line'
            ],
            function (ec) {
                // 基于准备好的dom,初始化echarts图表
                var myChart = ec.init(document.getElementById('main'));
                var xAxisData = [];
                var data1 = [];
                var data2 = [];
                for (var i = 0; i < 100; i++) {
                     xAxisData.push('类目' + i);
                     data1.push((Math.sin(i / 5) * (i / 5 -10) + i / 6) * 5);
                     data2.push((Math.cos(i / 5) * (i / 5 -10) + i / 6) * 5);
                }

                option = {
                    title: {
                        text: '柱状图动画延迟'
                    },
                    legend: {
                        data: ['bar', 'bar2'],
                        align: 'left'
                    },
                    toolbox: {
                        // y: 'bottom',
                        feature: {
                            magicType: {
                                type: ['stack', 'tiled']
                            },
                            dataView: {},
                            saveAsImage: {
                                pixelRatio: 2
                            }
                        }
                    },
                    tooltip: {},
                    xAxis: {
                        data: xAxisData,
                        silent: false,
                        splitLine: {
                            show: false
                        }
                    },
                    yAxis: {},
                    series: [{
                        name: 'bar',
                        type: 'bar',
                        data: data1,
                        animationDelay: function (idx) {
                            return idx * 10;
                        }
                    },{
                        name: 'bar2',
                        type: 'bar',
                        data: data2,
                        animationDelay: function (idx) {
                            return idx * 10+100;
                        }
                    }],
                    animationEasing: 'elasticOut',
                    animationDelayUpdate: function (idx) {return idx * 5;}
                };
                // 为echarts对象加载数据
                myChart.setOption(option);
            }
        );
    </script>
</body>
</html>

在这一个代码中,如果需要修改,可根据需求将“入口使用”下的require修改为你所需要的即可。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
抱歉,我是一个语言模型AI,无法提供完整的代码,但我可以给你一些指导。 首先,你需要安装Vue.js和ECharts。然后按照以下步骤进行操作: 1. 创建一个Vue组件,命名为NewZealandMap。 2. 在组件的template中,创建一个div元素,用于显示地。 3. 在组件的script中,导入ECharts和地数据。你可以从ECharts的官网下载地数据,或者使用ECharts提供的在线地数据。 4. 在组件的mounted生命周期钩子中,创建ECharts实例,并配置地数据。 5. 将ECharts实例挂载到前面创建的div元素上。 下面是一个Vue和ECharts实现新西兰地的例子,你可以参考一下: ``` <template> <div id="new-zealand-map" style="width: 100%; height: 600px;"></div> </template> <script> import echarts from 'echarts' import 'echarts/map/js/province/new_zealand' export default { mounted () { const chart = echarts.init(document.getElementById('new-zealand-map')) chart.setOption({ tooltip: { show: true, trigger: 'item' }, visualMap: { min: 0, max: 100, left: 'left', top: 'bottom', text: ['High', 'Low'], calculable: true, inRange: { color: ['#e0ffff', '#006edd'] } }, series: [ { name: 'New Zealand map', type: 'map', mapType: 'New Zealand', roam: true, label: { normal: { show: true }, emphasis: { show: true } }, itemStyle: { normal: { borderColor: '#ccc' }, emphasis: { areaColor: '#ffeb7b' } }, data: [ {name: 'Auckland', value: 50}, {name: 'Wellington', value: 20}, {name: 'Christchurch', value: 30} // add more data here ] } ] }) } } </script> ``` 在这个例子中,我们使用了New Zealand地数据,并添加了一些数据点到地上。你可以根据自己的需求修改地数据和样式。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值