使用chart和echarts制作图表

  前  言

chart.js是一个简单、面向对象、为设计者和开发者准备的图表绘制工具库。它可以帮你用不同的方式让你的数据变得可视化。每种类型的图表都有动画效果,并且看上去非常棒,即便是在retina屏幕上。Chart.js基于HTML5 canvas技术,支持所有现代浏览器,并且针对IE7/8提供了降级替代方案。并且它不依赖任何外部工具库,轻量级(压缩之后仅有4.5k),并且提供了加载外部参数的方法。

ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等),底层依赖轻量级的 Canvas 类库 ZRender,提供直观,生动,可交互,可高度个性化定制的数据可视化图表。

1.使用chart制作的六种图表类型

①曲线图(Line charts)

②柱状图(Bar charts)

            ③雷达图或蛛网图(Radar charts)

           ④饼图(Pie charts)

        ⑤极地区域图(Polar area charts)

         ⑥环形图(Doughnut charts)

2. 起步

引入Chart.js文件

首先我们需要在页面中引入Chart.js文件。此工具库在全局命名空间中定义了Chart变量。

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

创建图表

为了创建图表,我们要实例化一个Chart对象。为了完成前面的步骤,首先需要需要传入一个绘制图表的2d context。

html:

<div style="width: 500px;height: 400px;">
    <canvas id="myChart"></canvas>
</div>

javascript:

var ctx= document.getElementById("myChart").getContext("2d");
var myBarChart = new Chart(ctx{type:‘horizontalBar‘,data:barChartData,options:options});
//type指定了你要绘制的图表类型----bar:柱状图  pie:饼状图  rabar:雷达图  horizontalBar:水平柱状图

当我们完成了在指定的canvas上实例化Chart对象之后,Chart.js会自动针对retina屏幕做缩放。

Chart对象设置完成后,我们就可以继续创建Chart.js中提供的具体类型的图表了。以下的案例,我们将展示如何绘制一张水平柱状图。

在javascript中设置数据和参数:

var barChartData = {
            labels:["可爱","善良","睿智","迷人","乐观"],
            datasets:[{
                label:"小小",//图例
                fillColor:"rgba(255,99,132,0.5)",//背景填充色
                strokeColor:"rgba(220,220,220,1)",//路径颜色
                pointBorderColor:"#CF64A7",//描点颜色
                pointBackgroundColor:"rgba(255,0,0,0.8)",//描点的背景色
                backgroundColor:[
                ‘rgba(1,1,1,0.2)‘,
                ‘rgba(1,40,40,0.2)‘,
                ‘rgba(80,1,50,0.2)‘,
                ‘rgba(1,200,1,0.2)‘,
                ‘rgba(200,1,1,0.2)‘
                ],
                data:[100,90,96,94,90]
            }]
        };

设置选项:

var options={
      events:[‘click‘],
      scale:{
      ticks:{
      beginAtzero:true,
      stepSize:20,//y轴间距
      max:100,//y轴最大值
      min:0,//y轴最小值

    //y轴格式化
    callback :function(value){return value+‘%‘}
    },
    pointLables:{
        fontSize:13
    }
    }
}

结果如下:

三、Echarts的使用

ECharts 提供了常规的折线图柱状图散点图饼图K线图,用于统计的盒形图,用于地理数据可视化的地图热力图线图,用于关系数据可视化的关系图treemap,多维数据可视化的平行坐标,还有用于 BI 的漏斗图仪表盘,并且支持图与图之间的混搭。

你可以在下载界面下载包含所有图表的构建文件,如果只是需要其中一两个图表,又嫌包含所有图表的构建文件太大,也可以在在线构建中选择需要的图表类型后自定义构建。

下面案例,以制作饼状图为例:

html:

<div id="main" style="width: 800px;height: 400px;"></div>

javascript:

<script type="text/javascript">
       var myChart = echarts.init(document.getElementById("main"));
       var option = {
         title:{
         text:"饼状图",
         subtext:"纯属虚构",
         x:"center"
         },
         series:[{
         type:"pie",
         name:"访问来源",
         data:[{
         value:335,
         name:"直接访问"
        },
        {
        value:310,
        name:"邮件营销"
        },
        {
        value:234,
        name:"联盟广告"
        },
        {
        value:555,
        name:"视频广告"
        },
        {
        value:1235,
        name:"搜索引擎"
        },],
        center:["50%","60%"],//圆心坐标
        radius:"55%"         //远的半径
        }],
        tooltip:{  //提示框
           trigger:"item",      //触发类型
           formatter:"{a}<br>{b}:{c} ({d}%)" ,//鼠标指上时显示的数据a:系列名称     b:类目值     c:数值      d:占的百分比
           backgroundColor:"rgba(0,0,0,0.7)" //提示框的背景色,默认为透明度为0.7的黑色
        },
        legend:{
           orient:"vertical",
           x:"left",
           data:[‘直接访问‘,‘邮件营销‘,‘联盟广告‘,‘视频广告‘,‘搜索引擎‘]
        },
       toolbox:{        //工具箱
          show:true,
          feature:{       //启用功能
             dataView:{
                  show:true,
                  readOnly:false  //readOnly默认数据视图为可读,可指定readOnly为false打开编辑功能
             },
            restore:{   //还原,复位原始图表
                 show:true,
            },
            saveAsImage:{
                show:true,
                type:"jpeg",//默认为png,可以改为jpeg
                title:"保存图片"
           }
        }
     }
 }
    myChart.setOption(option);
</script>

结果如下图:

这是chart和echarts制作饼状图的简单使用,具体可在chart和echarts官网中查看。

chart中文文档:http://www.bootcss.com/p/chart.js/docs/

echatrs官网:http://echarts.baidu.com/

时间: 2024-11-07 15:17:27

使用chart和echarts制作图表的相关文章

基于echarts实现图表展示

[Author]: kwu 1.引用相关的js框架 <pre name="code" class="javascript"><script type="text/javascript" src="js/esl/esl.js"></script> <script type="text/javascript" src="js/echarts.js"&

echarts创建图表

Echarts是一个图表插件,可以用在做一些统计图 如:折线图 还有柱状图 我们在工作中有时会用到图表来展示数据 我们一起来学学echarts这个图表插件吧^_^ 第一步:下载插件包 下载地址:http://echarts.baidu.com/index.html 下载好后,我们就来开始使用这个插件了 第二步:创建html文档并引入插件的文件 第三步:创建容器,并设置高度 第四步:在新建一个script用来写js代码 第五步:配置文件包的路径(因为后面要使用包里的东西,所以需要先设置路径) 现在

Asp.NET Core制作图表

Asp.NET Core制作图表(折线图,条形图和饼图) 第一步:在原有项目的解决方案右键-->添加-->新建项目,在弹出框选中"类库(.net core)",类名设为"HighchartsNETCore" 图1 展开HighchartsNETCore,在其下的"依赖项"右键选中"管理NuGet程序包" ,在弹出框输入"Razor.Runtime"    ,并安装图3蓝色选中部分. 图2 图3

knockout+echarts实现图表展示

一.需要学习的知识 knockout, require, director, echarts, jquery.简单的入一下门,网上的资料很多,最直接就是进官网校习. 二.效果展示 三.require的配置 require.config.js中可以配置我们的自定义模块的加载. require.config({ baseUrl: ".", paths: { text: "requirejs/text", jquery: "jquery/jquery-1.11.

Echarts调整图表上下左右的间距,Echarts调整柱状图左右的间距

Echarts调整图表上下左右的间距,Echarts调整柱状图左右的间距 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ?Copyright 蕃薯耀 2017年5月5日 http://www.cnblogs.com/fanshuyao/ 做了个柱状图的报表,如下: 但是图和下面的表格没有对齐,需要

Echarts制作饼图在数值后面加上单位

通过echarts制作饼图,鼠标移动到对应的扇形看到数值和百分比,怎样在数值后面加上单位呢,例如 任务分配:15.498155分钟(34.23%),series.data 数组里只有value和name,这个“分钟”单位怎样加呢? tooltip有手动formatter的方法,你想变成啥样就啥样 或者: 效果图如下:

Highcharts是一个制作图表的纯Javascript类库

Highcharts是一个制作图表的纯Javascript类库,主要特性如下: 兼容性:兼容当今所有的浏览器,包括iPhone.IE和火狐等等: 对个人用户完全免费: 纯JS,无BS: 支持大部分的图表类型:直线图,曲线图.区域图.区域曲线图.柱状图.饼装图.散布图: 跨语言:不管是PHP.Asp.net还是Java都可以使用,它只需要三个文件:一个是Highcharts的核心文件highcharts.js,还有a canvas emulator for IE和Jquery类库或者MooTool

Chart.js报表制作

需要引入Chart.js <%@ page language="java" pageEncoding="UTF-8"%> <!DOCTYPE HTML> <html> <head> <title>报表</title> <script src="js/Chart.js"></script> </head> <body> <l

vue 插件 使用 Echarts 创建图表 (转)

在后台管理系统中,图表是一个很普遍的元素.目前常用的图标插件有 charts,  Echarts, highcharts.这次将介绍 Echarts 在 Vue 项目中的应用. 一.安装插件 使用 cnpm 安装 Echarts cnpm install echarts -S 和之前介绍的 axios 类似,echarts 也不能通过 Vue.use() 进行全局调用 通常是在需要使用图表的 .vue 文件中直接引入 import echarts from 'echarts' 也可以在 main