算法学习
、4对1辅导
、论文辅导
、核心期刊
项目的代码和数据下载
可以通过公众号
滴滴我
1、项目描述
2015~2023年各厂商各车型的探索。此次数据集的相关可视化展示均采用 pyecharts 进行绘制。
2、数据描述
该数据共9732条
,共7
个字段。分别是:年份
、月份
、排名
、厂商
、车型
、销量
、售价(万元)
。
以下是表的部分数据。
3、导入包
# 加载所需的库
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import plotly.io as pio
pio.templates.default = 'plotly_dark'
plt.rcParams['font.sans-serif'] = ['Microsoft YaHei'] #设置显示中文字体
plt.rcParams['axes.unicode_minus'] = False
import bar_chart_race as bcr #用于制作动态条形图的库
from warnings import filterwarnings
filterwarnings('ignore')
4、数据准备,且检查数据
# 读取数据
path = r'/中国电动车每月销售表.xlsx'
Carsales = pd.read_excel(path)
print('数据大小:',Carsales.shape)
# 查看数据表前5行
Carsales.head()
由于年份与月份是分开的,我们需要把年份和月份合并为“年月”的格式
# 处理年月信息
Carsales['年月'] = Carsales['年份'].astype(str)+"/"+Carsales['月份'].astype(str)
# 查看处理后的数据格式
Carsales.head()
在制作动态条形图前先输出并数据表中的关键字段信息并检查是否存在异常数据或是特殊字符等等
columns_list = ['年份','厂商','销量']
for column in columns_list:
print(column+'信息',":")
print(Carsales[column].nunique(),'\n')
print(Carsales[column].unique(),'\n')
统计不同的厂商每年每月的总销量
result1 = Carsales.groupby(['年月','厂商']).销量.sum().reset_index(name = 'total')
result1 = pd.pivot_table(result1,index = '年月',columns = '厂商',values = 'total')
result1.columns.name = ''
result1.fillna(0,inplace = True)#以0替换空值
result1.head()
5、动图可视化
动态条形图展示各月销量前5的厂商
bcr.bar_chart_race(result1,filename = None,#filename 你要保存的文件名
steps_per_period= 10,
period_length=500,
# fixed_max = False,
fixed_order = False,n_bars = 5,
bar_size = 0.6, #设置条形图的柱子大小
figsize = (5,3),
perpendicular_bar_func ='median',
title = '2015年~2023年每月电动汽车销售量排名',
# win的路径
# shared_fontdict={ 'family' : 'Microsoft YaHei', 'color' : '.1'}
# mac的路径
shared_fontdict={ 'family' : 'Arial Unicode MS', 'color' : '.1'}
)