plotly绘图——饼图

介绍

plotly是一个易于使用,功能强大的python绘图库,用于构建可交互式的图表(可以自行运行后使用鼠标拖拽图片试试),本系列文章将介绍plotly绘制各种类型图的方法,本文将介绍——饼图

饼图

简单饼图

代码解释

  • df = px.data.gapminder().query("year == 2007").query("continent == 'Europe'")
    首先,代码从Plotly库提供的gapminder数据集中筛选出特定子集。gapminder数据集包含了多个国家多年的人口、收入等指标。第一个.query()调用筛选出年份为2007的数据行,第二个.query()调用进一步筛选出位于欧洲大陆的国家。

  • df.loc[df['pop'] < 2.e6, 'country'] = 'Other countries'
    接下来,代码使用Pandas库的.loc方法对DataFrame df进行操作。这行代码的目的是将人口少于200万(2.e6)的国家标记为“Other countries”。df[‘pop’] < 2.e6是一个布尔索引,它为满足条件的行生成True,否则生成False。然后,这些布尔值被用作.loc方法的第一个参数,指定了要修改的行。第二个参数是列名’country’,表示我们要修改的是country列的值,将其设置为字符串“Other countries”。

  • fig = px.pie(df, values='pop', names='country', title='Population of European continent')
    这一行代码使用px.pie()函数创建了一个饼图。df是经过筛选和修改的DataFrame,values='pop’指定了饼图中每个扇区的大小由pop列的值决定,即人口数量。names='country’指定了饼图中每个扇区的标签由country列的值决定,即国家名称。title='Population of European continent’设置了图表的标题。fig变量存储了创建的饼图对象。

import plotly.express as px
df = px.data.gapminder().query("year == 2007").query("continent == 'Europe'")
df.loc[df['pop'] < 2.e6, 'country'] = 'Other countries'
fig = px.pie(df, values='pop', names='country', title='Population of European continent')
fig.show()

在这里插入图片描述

设置饼图的颜色

代码解释

  • df = px.data.tips()
    这一行代码调用了plotly.express模块中的px.data.tips()函数,这个函数返回了一个内置的示例数据集tips。这个数据集包含了关于餐厅小费的信息,如账单总额、小费金额、人数以及支付小费的天(星期几)等。

  • fig = px.pie(df, values='tip', names='day', color_discrete_sequence=px.colors.sequential.RdBu)
    这一行代码使用px.pie()函数创建了一个饼图。df是tips数据集,values='tip’指定了饼图中每个扇区的大小由tip列的值决定,即小费金额。names='day’指定了饼图中每个扇区的标签由day列的值决定,即支付小费的天(星期几)。
    color_discrete_sequence=px.colors.sequential.RdBu是一个参数,用于指定饼图中不同扇区的颜色序列。px.colors.sequential.RdBu是一个颜色序列,它提供了从红色到蓝色的渐变色,这些颜色将被用于区分饼图中的不同扇区。

import plotly.express as px
df = px.data.tips()
fig = px.pie(df, values='tip', names='day', color_discrete_sequence=px.colors.sequential.RdBu)
fig.show()

在这里插入图片描述

甜甜圈图

代码解释

  • 定义标签和值的列表:
    labels = ['Oxygen','Hydrogen','Carbon_Dioxide','Nitrogen']:这个列表包含了四种气体的名称,它们将作为饼图中每个扇区的标签。
    values = [4500, 2500, 1053, 500]:这个列表包含了与每个标签相对应的数值,这些数值将决定饼图中每个扇区的大小。

  • 创建一个Figure对象:
    fig = go.Figure():这行代码初始化了一个空的Plotly Figure对象,该对象将用于存储饼图的数据和配置。

  • 向Figure对象添加一个Pie图表:
    data=[go.Pie(labels=labels, values=values, hole=.3))]:这行代码创建了一个Pie图表,并将其作为数据层添加到Figure对象中。go.Pie是Plotly库中用于创建饼图的函数。
    labels=labels:将前面定义的气体名称列表传递给Pie图表,作为扇区的标签。
    values=values:将前面定义的气体数量列表传递给Pie图表,作为扇区的大小。
    hole=.3:这个参数指定了饼图中心的空白区域(即“洞”)的大小。值.3表示饼图中心的空白区域占整个饼图半径的30%。

import plotly.graph_objects as go

labels = ['Oxygen','Hydrogen','Carbon_Dioxide','Nitrogen']
values = [4500, 2500, 1053, 500]

fig = go.Figure(data=[go.Pie(labels=labels, values=values, hole=.3)])
fig.show()

在这里插入图片描述

  • 45
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值