Matplotlib Bar Plot Multiple Columns

Matplotlib Bar Plot Multiple Columns

参考:Matplotlib bar plot multiple columns

在数据可视化中,条形图是一种广泛使用的图表类型,用于展示不同类别的数据之间的比较。Matplotlib是一个功能强大且广泛使用的Python数据可视化库,它提供了多种绘制条形图的方法。本文将详细介绍如何使用Matplotlib绘制多列数据的条形图。

1. 准备数据

首先,我们需要准备数据集。假设我们有一份销售数据集,其中包含了三个地区(A、B、C)的每个地区的每月销售额。销售数据如下:

月份 地区A 地区B 地区C
一月 100 150 200
二月 120 130 170
三月 80 140 160
四月 110 120 180
五月 90 160 190

我们可以将这个数据集存储在一个2维数组或DataFrame中。这里我们使用Pandas库来处理数据:

import pandas as pd

data = {
    '月份': ['一月', '二月', '三月', '四月', '五月'],
    '地区A': [100, 120, 80, 110, 90],
    '地区B': [150, 130, 140, 120, 160],
    '地区C': [200, 170, 160, 180, 190]
}

df = pd.DataFrame(data)

2. 绘制多列数据的条形图

有了数据集,我们可以使用Matplotlib绘制多列数据的条形图。下面是绘制这个销售数据的条形图的代码:

import matplotlib.pyplot as plt
import numpy as np
from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['Microsoft YaHei'] # 指定默认字体:解决plot不能显示中文问题
mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像是负号'-'显示为方块的问题

# 根据月份的数量生成等间距的x坐标
x = np.arange(len(df['月份']))

# 设置条形的宽度
width = 0.2

# 绘制地区A的条形图
plt.bar(x-0.2, df['地区A'], width, label='地区A')

# 绘制地区B的条形图
plt.bar(x, df['地区B'], width, label='地区B')

# 绘制地区C的条形图
plt.bar(x+0.2, df['地区C'], width, label='地区C')

# 设置x坐标的刻度和标签
plt.xticks(x, df['月份'])

# 设置y坐标的刻度范围
plt.ylim(0, 250)

# 添加图例
plt.legend()

# 显示条形图
plt.show()

运行上述代码会得到一个包含三个地区销售数据的条形图。每个月份都显示了不同地区的销售额,并使用颜色区分了不同地区。

Matplotlib Bar Plot Multiple Columns

3. 结论

本文介绍了如何使用Matplotlib绘制多列数据的条形图。通过使用合适的数据集和绘图代码,我们可以可视化并比较不同类别的数据。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程