当前位置:首页 > 文章列表 > 文章 > 前端 > ECharts饼图:如何展示数据占比

ECharts饼图:如何展示数据占比

2023-12-17 09:36:50 0浏览 收藏

学习文章要努力,但是不要急!今天的这篇文章《ECharts饼图:如何展示数据占比》将会介绍到等等知识点,如果你想深入学习文章,可以关注我!我会持续更新相关文章的,希望对大家都能有所帮助!

随着数据可视化的广泛应用,ECharts这一优秀的可视化库也受到越来越多的关注。其中,饼图被广泛应用于展示数据的占比情况。本文将介绍如何使用ECharts饼图展示数据占比,并提供具体的代码示例。

一、ECharts饼图的基础概念

首先,我们需要了解饼图的基础概念。饼图常用于表示数据的占比情况,将具体的数值转化为角度大小,再用扇形区域的大小来表示。各扇形区域的大小与它们的数值成比例。

二、ECharts饼图实现方式

使用ECharts绘制饼图,需要先引入ECharts库,并创建一个带有指定尺寸的div标签,用于展示饼图。具体代码如下:

<style type="text/css">
  #myChart {
    width: 400px;
    height: 400px;
  }
</style>
<div id="myChart"></div>
<script src="echarts.min.js"></script>

其中,style标签用于指定饼图所在的div标签的尺寸。script标签则引入了ECharts库的min版。

然后,我们需要通过JavaScript代码来实现饼图。具体的代码如下:

var myChart = echarts.init(document.getElementById('myChart'));

var option = {
  title: {
    text: '饼图示例',
    left: 'center'
  },
  tooltip: {},
  legend: {
    data:['数据1', '数据2', '数据3']
  },
  series: [
    {
      name:'数据占比',
      type:'pie',
      radius: '55%',
      center: ['50%', '60%'],
      data:[
        {value:335, name:'数据1'},
        {value:310, name:'数据2'},
        {value:234, name:'数据3'}
      ],
      itemStyle: {
        emphasis: {
          shadowBlur: 10,
          shadowOffsetX: 0,
          shadowColor: 'rgba(0, 0, 0, 0.5)'
        }
      }
    }
  ]
};

myChart.setOption(option);

上述代码中,我们首先使用echarts.init()方法来初始化ECharts实例。然后,我们定义了一个JavaScript对象option,该对象定义了饼图中所需要的各种属性和数据。最后,我们使用setOption()方法将这个option对象应用到ECharts实例中,从而生成饼图。

具体来说,option对象包含了以下几个属性:

  1. title:用于设置饼图的标题;
  2. tooltip:用于设置鼠标浮动时的提示信息;
  3. legend:用于设置饼图中每个扇形区域的标签;
  4. series:用于设置饼图中具体的数据系列,包括半径、数据、样式等。

三、ECharts饼图的样式设置

除了基本的数据展示外,ECharts饼图还提供了多种样式设置的选项,可以通过修改相应属性来实现不同样式的饼图。

  1. 内外半径

通过设置radius属性来调整饼图的内外半径,从而控制扇形区域的大小。如下代码:

series: [
  {
    type: 'pie',
    radius: ['50%', '70%'],
    data: [
      {value: 335, name: '数据1'},
      {value: 310, name: '数据2'},
      {value: 234, name: '数据3'},
      {value: 135, name: '数据4'},
      {value: 1548, name: '数据5'}
    ]
  }
]

上述代码中,radius属性包含了一个数组,数组中的两个值分别代表内外半径的百分比。在此例中,内半径为50%,外半径为70%。

  1. 图例位置

通过设置legend属性中的x、y、orient属性来调整图例的位置和方向。如下代码:

legend: {
  x: 'left',
  y: 'center',
  orient: 'vertical',
  data: ['数据1', '数据2', '数据3', '数据4', '数据5']
}

上述代码中,x属性设置图例的水平位置为左侧,y属性设置图例的垂直位置为中心,orient属性设置图例的方向为垂直方向。

  1. 阴影效果

通过设置itemStyle属性中的emphasis属性,可以给扇形区域添加阴影等效果,从而增强饼图的视觉效果。如下代码:

itemStyle: {
  emphasis: {
    shadowBlur: 10,
    shadowOffsetX: 0,
    shadowColor: 'rgba(0, 0, 0, 0.5)'
  }
}

上述代码中,shadowBlur代表阴影的模糊程度,shadowOffsetX和shadowOffsetY代表阴影的水平和垂直偏移量,shadowColor代表阴影的颜色。

四、ECharts饼图的实例

下面,我们给出一个具体的ECharts饼图实例,其中包含了以上提到的基础数据以及样式设置。代码如下:

<style type="text/css">
  #myChart {
    width: 400px;
    height: 400px;
  }
</style>
<div id="myChart"></div>
<script src="echarts.min.js"></script>
<script>
  var myChart = echarts.init(document.getElementById('myChart'));
  var option = {
    title: {
      text: '饼图示例',
      left: 'center'
    },
    tooltip: {
      trigger: 'item',
      formatter: '{a} <br/>{b}: {c} ({d}%)'
    },
    legend: {
      orient: 'vertical',
      left: 10,
      top: 20,
      data:['数据1', '数据2', '数据3', '数据4', '数据5']
    },
    series: [
      {
        name: '访问来源',
        type: 'pie',
        radius: ['40%', '60%'],
        avoidLabelOverlap: false,
        label: {
          show: false,
          position: 'center'
        },
        emphasis: {
          label: {
            show: true,
            fontSize: '30',
            fontWeight: 'bold'
          }
        },
        labelLine: {
          show: false
        },
        data:[
          {value:335, name:'数据1'},
          {value:310, name:'数据2'},
          {value:234, name:'数据3'},
          {value:135, name:'数据4'},
          {value:1548, name:'数据5'}
        ]
      }
    ]
  };
  myChart.setOption(option);
</script>

该饼图包含了以下特点:

  1. 添加了图例,并将图例位置调整为左上角;
  2. 添加了鼠标悬浮时的提示浮窗,并显示了占比百分比;
  3. 增加了阴影效果,并设置了鼠标悬浮时的高亮特效。

以上就是ECharts饼图的基本实现方式和一些样式设置示例的介绍,希望读者能够通过本文对ECharts饼图有一定的了解,并能够在实际开发中正确应用。

理论要掌握,实操不能落!以上关于《ECharts饼图:如何展示数据占比》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

ECharts和Java接口:如何应用于智能客服统计分析ECharts和Java接口:如何应用于智能客服统计分析
上一篇
ECharts和Java接口:如何应用于智能客服统计分析
使用ECharts和Python接口绘制散点图的方法
下一篇
使用ECharts和Python接口绘制散点图的方法
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    542次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    509次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    497次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    484次学习
查看更多
AI推荐
  • AI边界平台:智能对话、写作、画图,一站式解决方案
    边界AI平台
    探索AI边界平台,领先的智能AI对话、写作与画图生成工具。高效便捷,满足多样化需求。立即体验!
    17次使用
  • 讯飞AI大学堂免费AI认证证书:大模型工程师认证,提升您的职场竞争力
    免费AI认证证书
    科大讯飞AI大学堂推出免费大模型工程师认证,助力您掌握AI技能,提升职场竞争力。体系化学习,实战项目,权威认证,助您成为企业级大模型应用人才。
    43次使用
  • 茅茅虫AIGC检测:精准识别AI生成内容,保障学术诚信
    茅茅虫AIGC检测
    茅茅虫AIGC检测,湖南茅茅虫科技有限公司倾力打造,运用NLP技术精准识别AI生成文本,提供论文、专著等学术文本的AIGC检测服务。支持多种格式,生成可视化报告,保障您的学术诚信和内容质量。
    166次使用
  • 赛林匹克平台:科技赛事聚合,赋能AI、算力、量子计算创新
    赛林匹克平台(Challympics)
    探索赛林匹克平台Challympics,一个聚焦人工智能、算力算法、量子计算等前沿技术的赛事聚合平台。连接产学研用,助力科技创新与产业升级。
    243次使用
  • SEO  笔格AIPPT:AI智能PPT制作,免费生成,高效演示
    笔格AIPPT
    SEO 笔格AIPPT是135编辑器推出的AI智能PPT制作平台,依托DeepSeek大模型,实现智能大纲生成、一键PPT生成、AI文字优化、图像生成等功能。免费试用,提升PPT制作效率,适用于商务演示、教育培训等多种场景。
    185次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码