echarts饼图详细

标签属性

标签属性:label模板字符串显示name和value

未使用之前,系列的name默认就显示在外面了,显示的是name

 

 系列里面有系列的类型,数据,label标签。数据就是一个列表,列表元素是字典,一个字典代表饼图的一个扇区的数据,一个数据就有name,和value。

系列的标签设置:如下,a代表啥不清楚,b代表数据里的name,c代表数据里的value,d代表数据里的value的占比。formatter可以控制显示哪些内容。position代表显示在图内还是图外,inside和outside。

 

 如下,a代表系列的名称。系列在pandas里面就是一列数据,这里貌似类似,我们这里相当于data里面一个字典就代表一个单元格数据,name相当于行标题,一列就不需要标题了,只要对应数值就行,貌似这样理解也行。标签就是对每个数据单元的标签描述、信息

 

 饼图实现系列data的name value在图外,百分比在图内

 

 

option = {
  series: [
      {
        type: 'pie',
        radius: '90%',
        label: {            //饼图图形上的文本标签
            show: true,
            position: 'outside', //标签的位置
            textStyle: {
              fontWeight: 300,
              fontSize: 14    //文字的字体大小
            },
            formatter: function (d) {
              console.log(d);
              return d.name+"\n"+d.value+"公里"
            }
        },
        data: [
          { value: 484, name: '左幅' },
          { value: 300, name: '右幅' }
        ],
        emphasis: {
          itemStyle: {
            shadowBlur: 10,
            shadowOffsetX: 0,
            shadowColor: 'rgba(0, 0, 0, 0.5)'
          }
        }
      },



      {
        type: 'pie',
        radius: '90%',
        label: {            //饼图图形上的文本标签
            show: true,
            position: 'inside', //标签的位置
            textStyle: {
              fontWeight: 300,
              fontSize: 16    //文字的字体大小
            },
            formatter: function (d) {
              return Math.round(d.percent) + '%'
            }
        },
        data: [
          { value: 484, name: '左幅' },
          { value: 300, name: '右幅' }
        ],
        emphasis: {
          itemStyle: {
            shadowBlur: 10,
            shadowOffsetX: 0,
            shadowColor: 'rgba(0, 0, 0, 0.5)'
          }
        }
      }

    ]
};
option = {
  series: [
      {
        type: 'pie',
        radius: '90%',
        label: {            //饼图图形上的文本标签
            show: true,
            position: 'outside', //标签的位置
            textStyle: {
              fontWeight: 300,
              fontSize: 14    //文字的字体大小
            },
            formatter: function (d) {
              console.log(d);
              return d.name+"\n"+d.value+"公里"
            }
        },
        data: [
          { value: 484, name: '左幅' },
          { value: 300, name: '右幅' }
        ],
        emphasis: {
          itemStyle: {
            shadowBlur: 10,
            shadowOffsetX: 0,
            shadowColor: 'rgba(0, 0, 0, 0.5)'
          }
        }
      },



      {
        type: 'pie',
        radius: '90%',
        label: {            //饼图图形上的文本标签
            show: true,
            position: 'inside', //标签的位置
            textStyle: {
              fontWeight: 300,
              fontSize: 16    //文字的字体大小
            },
            formatter: function (d) {
              return Math.round(d.percent) + '%'
            }
        },
        data: [
          { value: 484, name: '左幅' },
          { value: 300, name: '右幅' }
        ],
        emphasis: {
          itemStyle: {
            shadowBlur: 10,
            shadowOffsetX: 0,
            shadowColor: 'rgba(0, 0, 0, 0.5)'
          }
        }
      }

    ]
};

当我们想要添加一个数据时,如下在两个data上共添加两行

效果:

 

 程序:

option = {
  series: [
      {
        type: 'pie',
        radius: '90%',
        label: {            //饼图图形上的文本标签
            show: true,
            position: 'outside', //标签的位置
            textStyle: {
              fontWeight: 300,
              fontSize: 14    //文字的字体大小
            },
            formatter: function (d) {
              console.log(d);
              return d.name+"\n"+d.value+"公里"
            }
        },
        data: [
          { value: 484, name: '左幅' },
          { value: 300, name: '右幅' },
          { value: 300, name: '魔降风云变' },
        ],
        emphasis: {
          itemStyle: {
            shadowBlur: 10,
            shadowOffsetX: 0,
            shadowColor: 'rgba(0, 0, 0, 0.5)'
          }
        }
      },



      {
        type: 'pie',
        radius: '90%',
        label: {            //饼图图形上的文本标签
            show: true,
            position: 'inside', //标签的位置
            textStyle: {
              fontWeight: 300,
              fontSize: 16    //文字的字体大小
            },
            formatter: function (d) {
              return Math.round(d.percent) + '%'
            }
        },
        data: [
          { value: 484, name: '左幅' },
          { value: 300, name: '右幅' },
      { value: 300, name: '魔降风云变' },
        ],
        emphasis: {
          itemStyle: {
            shadowBlur: 10,
            shadowOffsetX: 0,
            shadowColor: 'rgba(0, 0, 0, 0.5)'
          }
        }
      }

    ]
};

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章