import matplotlib.pyplot as plt import pandas as pd plt.rcParams['font.sans-serif']=['Arial Unicode MS'] #设置中文字体为Arial Unicode MS plt.rcParams['axes.unicode_minus']=False #解决保存图像是负号'-'显示为方块的问题 df = pd.read_csv("vehicles-数据.csvv",encoding='gbk')带或是不带增压充电器(sCharger)的车的数量和年份的关系。展示不同年份带或是不带增压充电器汽车的数量或者百分比用groupbar展示
时间: 2024-02-03 11:03:56 浏览: 21
根据你提供的代码,以下是一个示例的代码,可以帮助你回答这些问题:
```
import pandas as pd
import matplotlib.pyplot as plt
# 读取CSV文件
df = pd.read_csv("vehicles-数据.csv", encoding='gbk')
# 将增压充电器(sCharger)列中的空值填充为“无”
df["sCharger"].fillna("无", inplace=True)
# 统计年份和增压充电器的交叉计数
count_df = pd.crosstab(df["year"], df["sCharger"])
# 计算每一年的总记录数量
total_records = count_df.sum(axis=1)
# 计算每一年增压充电器汽车的数量占比
scharger_percent = count_df["有"] / total_records
# 计算每一年未带增压充电器汽车的数量占比
no_scharger_percent = count_df["无"] / total_records
# 绘制图形
fig, ax = plt.subplots()
ax.bar(count_df.index, nocharger_percent, label="No Supercharger")
ax.bar(count_df.index, scharger_percent, bottom=nocharger_percent, label="With Supercharger")
ax.set_xlabel("Year")
ax.set_ylabel("Percentage")
ax.legend()
plt.show()
```
请替换"vehicles-数据.csv"为你的CSV文件名,并且替换"sCharger"和"year"为你数据集中的实际列名。这个示例代码可以帮助你统计带或是不带增压充电器汽车的数量和年份的关系,并使用分组条形图展示不同年份带或是不带增压充电器汽车的数量或者百分比。该图形使用两个颜色的条形来表示带或是不带增压充电器汽车的数量占比。