Chart.js 折线图

折线图是排列在工作表的列或行中的数据可以绘制到折线图中。

折线图可以显示随时间(根据常用比例设置)而变化的连续数据,因此非常适用于显示在相等时间间隔下数据的趋势。

折线图 type 属性为 line ,type 描述了图表类型。

									const config = {
  type: 'line',
  data: data,
};
								

接下来我们创建一个简单的折线图:

实例

const ctx = document. getElementById ( 'myChart' ) ;
const labels = [ '一月份' , '二月份' , '三月份' , '四月份' , '五月份' , '六月份' , '七月份' ] ;   // 设置 X 轴上对应的标签
const data = {
  labels : labels ,
  datasets : [ {
    label : '我的第一个折线图' ,
    data : [ 65 , 59 , 80 , 81 , 56 , 55 , 40 ] ,
    fill : false ,
    borderColor : 'rgb(75, 192, 192)' , // 设置线的颜色
    tension : 0.1
  } ]
} ;
const config = {
  type : 'line' , // 设置图表类型
  data : data ,
} ;
const myChart = new Chart ( ctx , config ) ;

尝试一下 »

以上实例输出结果为:

接下来我们丰富一下折线图,添加选项,设置如下:

实例

const ctx = document. getElementById ( 'myChart' ) ;
const labels = [ '一月份' , '二月份' , '三月份' , '四月份' , '五月份' , '六月份' , '七月份' ] ;   // 设置 X 轴上对应的标签
const data = {
  labels : labels ,
  datasets : [ {
    label : '我的第一个折线图' ,
    data : [ 65 , 59 , 80 , 81 , 56 , 55 , 40 ] ,
    fill : false ,
    borderColor : 'rgb(75, 192, 192)' , // 设置线的颜色
        backgroundColor : [ 'rgba(179, 0, 33, 0.5)' ] , // 设置点的填充色
        pointStyle : 'circle' ,     //设置点类型为圆点
    pointRadius : 6 ,     //设置圆点半径
    pointHoverRadius : 10 , //设置鼠标移动上去后圆点半径
    tension : 0.1
  } ]
} ;
const config = {
  type : 'line' , // 设置图表类型
  data : data ,
  options : {
    responsive : true ,   // 设置图表为响应式

    interaction : {   // 设置每个点的交互
      intersect : false ,
    } ,
    scales : {   // 设置 X 轴与 Y 轴
      x : {
        display : true ,
        title : {
          display : true ,
          text : '日期'
        }
      } ,
      y : {
        display : true ,
        title : {
          display : true ,
          text : '票数'
        }
      }
    }
  }
} ;
const myChart = new Chart ( ctx , config ) ;

尝试一下 »

以上实例输出结果为:

垂直折线图

垂直折线图是水平折线图的变体。

垂直折线图需要将选项对象中的 indexAxis 属性设置为 y ,indexAxis 属性的默认值为 x

实例

const ctx = document. getElementById ( 'myChart' ) ;
const labels = [ '一月份' , '二月份' , '三月份' , '四月份' , '五月份' , '六月份' , '七月份' ] ;   // 设置 X 轴上对应的标签
const data = {
  labels : labels ,
  datasets : [ {
    label : '我的第一个折线图' ,
    data : [ 65 , 59 , 80 , 81 , 56 , 55 , 40 ] ,
    fill : false ,
    borderColor : 'rgb(75, 192, 192)' , // 设置线的颜色
        backgroundColor : [ 'rgba(179, 0, 33, 0.5)' ] , // 设置点的填充色
        pointStyle : 'circle' ,     //设置点类型为圆点
    pointRadius : 6 ,     //设置圆点半径
    pointHoverRadius : 10 , //设置鼠标移动上去后圆点半径
    tension : 0.1
  } ]
} ;
const config = {
  type : 'line' , // 设置图表类型
  data : data ,
  options : {
    indexAxis : 'y' , // 设置垂直折线图
    responsive : true ,   // 设置图表为响应式

    interaction : {   // 设置每个点的交互
      intersect : false ,
    } ,
    scales : {   // 设置 X 轴与 Y 轴
      x : {
                beginAtZero : true , // 设置 X 轴从 0 开始
        display : true ,
        title : {
          display : true ,
          text : '日期'
        }
      } ,
      y : {
        display : true ,
        title : {
          display : true ,
          text : '票数'
        }
      }
    }
  }
} ;
const myChart = new Chart ( ctx , config ) ;

尝试一下 »

以上实例输出结果为: