plotly绘制柱状图/条形图(bar)


一、简单的柱状图

# 自带数据集 gapminder
data = px.data.gapminder()
data.head()

在这里插入图片描述
里面包含各个国家的情况,筛选出加拿大的数据进行画图如下

import plotly.express as px
data_canada = data.query("country == 'Canada'")#获取加拿大的数据
#或者data_canada = data.query("country == 'Canada'")
data_canada.head()

在这里插入图片描述
就可以画出简单的柱状图

#简单柱状图
# 柱状图
import plotly.express as px
data_canada = px.data.gapminder().query("country == 'Canada'")
fig = px.bar(
    data_canada, # 数据集
    x='year', # x轴
    y='pop', # y轴
)
fig.show()

在这里插入图片描述
年份为x轴,y为人数的柱状图

二、堆叠柱状图

1.长表数据怎么画

获取长表数据

long_df = px.data.medals_long()
long_df.head()

在这里插入图片描述

代码如下(示例):

# 堆叠柱状图 (使用长表数据,这种数据excel无法直接绘制堆叠图)
import plotly.express as px

long_df = px.data.medals_long()
fig = px.bar(
    long_df,  # 数据集
    x="nation",  # x轴
    y="count",  # y轴
    color="medal",  # 图例颜色(这种情况下需要设定该参数根据medal类型才区分,否则同色)
    title="堆叠柱状图 Long-Form Input", # 图表标题
)
fig.show()

在这里插入图片描述

2.宽表数据怎么画

代码如下(示例):

获取宽表数据

import plotly.express as px

wide_df = px.data.medals_wide()
wide_df.head()

在这里插入图片描述

import plotly.express as px

wide_df = px.data.medals_wide()
fig = px.bar(wide_df, x="nation", 
             y=["gold", "silver", "bronze"], 
             title="堆叠柱状图 Wide-Form Input")
fig.show()

在这里插入图片描述

三、簇状柱状图

用长表画簇状柱形图

import plotly.express as px

long_df = px.data.medals_long()
long_df.head()
fig = px.bar(
    long_df,  
    x="nation",  
    y="count",  
    color="medal",  
    title="簇状柱状图 Long-Form Input", 
    barmode='group', # barmode 设置为 group则为簇状柱形图,可选 stack(叠加)group(并列)overlay(覆盖)relative(相对)
)
fig.show() 

在这里插入图片描述

五、条形图

条形图与柱状图的唯一区别:在 Bar 函数中设置orientation=‘h’,其余参数与柱状图相同。

# 在plotly绘图中,条形图与柱状图唯一的区别:在 Bar 函数中设置orientation='h',其余参数与柱状图相同
import plotly.express as px
data = px.data.gapminder()

data_canada = data[data.country == 'Canada']
fig = px.bar(data_canada, y='year', x='pop',
             hover_data=['lifeExp', 'gdpPercap'], #鼠标悬浮显示
             color='lifeExp', # 指定柱状图颜色根据 lifeExp字段数值大小自动着色
             labels={'pop':'population of Canada'}, #y轴名称
             height=600, # 图表高度
             width=800, # 图表宽度
             orientation='h' # 条形图设置参数
            )
fig.show()

在这里插入图片描述

四、美化

后期更新敬请期待

文章参考:https://mp.weixin.qq.com/s/kVKgH0WFAeWLyHl_ucaDGg

  • 4
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

瓜瓜的小宝藏

给点饭吃吧呜呜呜

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值