matplotlib绘图二

matplotlib版本:3.7.5
numpy版本:1.24.3
pandas版本:2.0.3

本文主要记录matplotlib对pandas的绘图,matplotlib的绘图技巧参考这里matplotlib基本绘图

导包

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

matplotlib对Series的绘图

s1 = pd.Series(np.random.randn(100))
s1 = s1.cumsum()  # 累加,返回Series

# pd.Series([1, 2, 3]).cumsum()
# 0    1
# 1    3
# 2    6
# dtype: int64

折线图

s1.plot(kind="line", grid=True, label="s1", title="demo", style="--")
plt.legend()

在这里插入图片描述在一个图里画两个Series

s1 = pd.Series(np.random.randn(100)).cumsum()
s2 = pd.Series(np.random.randn(100)).cumsum()
s1.plot(kind="line", grid=True, label="s1", title="demo")
s2.plot(kind="line", grid=True, label="s2")

在这里插入图片描述使用子图的方式将2个Series画在一起

# 定义子图布局两行一列
fig, ax = plt.subplots(2, 1)
ax[0].plot(s1, label="s1", color="red")
ax[1].plot(s2)

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/7345d2ba22024f839f468d5cfe1aaf78.png)

matplotlib对DataFrame进行绘图

np.random.seed(0)
df = pd.DataFrame(np.random.randint(0, 10, 40).reshape(10, 4), columns=list("ABCD"))
df_t = df.T # 行列转置
df_t

水平柱状图

# 水平柱状图,按行取每一列的数据进行绘图
df.plot(kind="barh")  # horizontal bar chart

在这里插入图片描述柱状图

# 不显示图例,将每一行所有的列数据画在一起
# colormap="winter"设置冬季风格
df.plot(kind="bar", colormap="winter", legend=False)

在这里插入图片描述
堆叠柱状图

# 堆叠柱状图
df.plot(kind="bar", stacked=True)  # stacked bar chart

在这里插入图片描述对某一列画图

# 对A列进行画图
df["A"].plot()

在这里插入图片描述

直方图

s1 = pd.Series(np.random.randn(1000))
# rwidth 每个柱子之间的宽度
# bins 柱子的个数
plt.hist(s1, rwidth=0.9, bins=20)

在这里插入图片描述

密度图

s1.plot(kind="kde")

在这里插入图片描述

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值