下面是关于利用Python对中国500强排行榜数据进行可视化分析的完整实例教程。
1. 准备工作
首先,我们需要准备数据集。可以去 http://www.fortunechina.com/fortune500/c/2019-07/22/content_342080.htm 下载排行榜数据并保存为 CSV 格式。
接着,我们需要安装一些 Python 库,包括 pandas、matplotlib、seaborn、mpl_toolkits 等。可以使用 pip 命令安装:
pip install pandas matplotlib seaborn mpl_toolkits
2. 数据读取与处理
将 CSV 文件读入 pandas 数据框中,然后对数据进行处理,例如去掉不需要的列,修改列名等。
import pandas as pd
# 读入 CSV 文件
df = pd.read_csv("fortune500_2019.csv")
# 去掉行业分类列
df.drop(["行业分类"], axis=1, inplace=True)
# 修改列名
df.rename(columns={"公司名称": "名称", "营业收入(百万元)": "营收", "利润(百万元)": "利润"}, inplace=True)
# 将营收、利润转为数值类型
df[['营收', '利润']] = df[['营收', '利润']].apply(pd.to_numeric, errors='coerce')
# 去掉空值行
df.dropna(inplace=True)
# 重置索引
df.reset_index(drop=True, inplace=True)
3. 数据可视化
接下来,我们开始进行数据可视化。我们可以使用 matplotlib 和 seaborn 库来创建图表,而 mpl_toolkits 库则可以用于创建 3D 图形等特效。
3.1 企业数量与地区分布
首先,我们创建一个条形图,显示中国500强排行榜中每个地区的企业数量。
import matplotlib.pyplot as plt
import seaborn as sns
# 按地区分组并计数
df_region = df.groupby('地区').size().reset_index(name='数量')
# 创建条形图
plt.figure(figsize=(10, 6))
plt.xticks(rotation=45)
sns.barplot(x='地区', y='数量', data=df_region, palette='Blues_r')
plt.show()
barplot() 方法会自动将 X 轴上的标签旋转为 45 度,这样可以避免标签重叠。
3.2 营收、利润及产值的分布
我们可以创建一个散点图,显示营收、利润及产值的分布情况。使用 mpl_toolkits 库中的 Axis3D 类可以创建 3D 效果的图形。
import mpl_toolkits.mplot3d.axes3d as p3
import numpy as np
# 创建 3D 散点图
fig = plt.figure(figsize=(10,6))
ax = p3.Axes3D(fig)
# 取出营收、利润、产值的数值
x = df.营收
y = df.利润
z = df.产值
# 标准化数值以便更好地观察
norm = plt.Normalize(1,4)
colors = plt.cm.rainbow(norm(np.array(df['排名'])))
# 绘制散点图
ax.scatter(x, y, z, s=50, c=colors, marker='o', alpha=0.6)
# 设置坐标轴标签
ax.set_xlabel('营收')
ax.set_ylabel('利润')
ax.set_zlabel('产值')
# 显示 3D 效果
plt.show()
以上是在Python中对中国500强企业的可视化分析实现的两个示例,更多的数据分析技巧、方法及案例,读者可以进一步深入学习和实践。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:利用Python对中国500强排行榜数据进行可视化分析 - Python技术站