1. 手机市场份额分析
一、事前准备工作
(1) 首先需要创建一个CSV文件
为了从CSV文件中读取数据并制作成柱状图,我们首先需要确保CSV文件的格式与我们之前讨论的数据结构相匹配。假设CSV文件的格式如下:
厂商,2020年第二季度出货量,2021年第二季度出货量
vivo,15.0,18.6
OPPO,14.1,16.5
小米,9.1,13.4
Apple,7.3,8.6
荣耀,12.9,6.9
(2) 确定第三方库已经安装
如果第三方库未安装,先进行第三方库的安装。
接下来,我们将使用Python的 pandas
库来读取CSV文件,并使用 matplotlib
库来绘制柱状图。如果尚未安装这些库,请先使用 pip
进行安装:
pip install pandas matplotlib
制作:手机销量分析柱状统计图
导入需要的第三方模块
导入需要使用的第三方模块,pandas
和 matplotlib.pyplot
分别记作 pd
和 plt
。
pandas
用来读取存储数据的csv文件;matplotlib.pyplot
生成柱状统计图,同时可以用来设置统计图中的文字以中文的方式显示
【不设置中文的的字体生成的图表中文的部分不会正常显示!】
import pandas as pd
import matplotlib.pyplot as plt
设置图标中文显示
通过导入的第二个第三方模块中的 rcParams
函数进行中文字体的设置让生成的图表中的中文文字部分能够正常显示,而不是出现方框。
# 设置中文字体
plt.rcParams['font.sans-serif'] = ['SimHei'] # 设置中文字体
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
读取文件
通过导入的第一第三方模块 pandas
中的函数以只读的形式读取csv文件并将读取到的结果赋值给 df
。如下你的表示默认读取的文件和此时的Python处于同一个目录下。
# 读取CSV文件
df = pd.read_csv('手机销售统计.csv')# 请将.csv文件路径替换为自己的路径
设置图标的显示
对即将生成的图表样式进行确定。
- 通过
figure
函数设置生成的图标的大小; - 通过
plot
函数进行主张图的绘制。明确哪个为x
轴,哪个为y
轴;- 同时,通过
plt.gca()
:获取当前的Axes
对象。如果当前没有Axes
对象,则会创建一个新的Axes
对象。 ax
:将获取到的 Axes 对象赋值给变量 ax,以便后续对该 Axes 对象进行操作。
- 同时,通过
- 设置图标中显示“标题”和“标签”:
- 通过
title()
函数设置图标的标题; - 通过
xlabel()
函数设置图标的x轴的名称; - 通过
ylabel()
函数设置图标标y轴的名称。
- 通过
- 最后,对生成的图表进行美化后显示出来:
# 设置图表大小
plt.figure(figsize=(10, 6))
# 绘制柱状图
df.plot(kind='bar', x='厂商', y=['2020年第二季度出货量', '2021年第二季度出货量'], ax=plt.gca())
# 设置图表标题和标签
plt.title('手机厂商出货量变化(2020年第二季度 vs 2021年第二季度)')
plt.xlabel('厂商')
plt.ylabel('出货量(百万台)')
# 显示图表
plt.xticks(rotation=45) # 旋转x轴标签,以便更好地阅读
plt.tight_layout() # 自动调整子图参数,使之填充整个图像区域
plt.show()