matplotlib画图9

本文通过使用Python中的pandas和matplotlib库对1949年至1952年的月度乘客数据进行整理,并将其转换为CSV文件。之后,利用这些数据创建了两个图表:一个展示按年份分组的乘客数量趋势;另一个则是按月份分组的柱状图,直观地展示了不同月份的乘客数量变化。
部署运行你感兴趣的模型镜像
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib as mpl
import seaborn as sns
import numpy as np
plt.rcParams['font.sans-serif']=['SimHei']


#年
year=[1949,1949,1949,1949,1949,1949,
      1950,1950,1950,1950,1950,1950,
      1951,1951,1951,1951,1951,1951,
      1952,1952,1952,1952,1952,1952,]
#月
month=['jan','feb','mar','apr','may','jun',
       'jan','feb','mar','apr','may','jun',
       'jan','feb','mar','apr','may','jun',
       'jan','feb','mar','apr','may','jun',]
#
pas=[112,118,132,128,121,115,
     112,145,132,134,121,115,
     112,118,132,128,121,115,
     112,118,132,154,133,115,]

#将列表数据变为dataframe,在变csv,dataframe

df=pd.DataFrame({"year":year,"month":month,"pas":pas})
df.to_csv('passengers.csv')
df2=pd.read_csv("passengers.csv")
#按年份分组
df3=df2.groupby('year').sum()
print(df3)
#画图
plt.subplot(1,2,1)
plt.plot(df3['pas'],marker='o')
plt.xlabel('年份')
plt.ylabel('乘客')
plt.title("年份——乘客曲线图")
#按月份
df4=df2.groupby('month').sum()
plt.subplot(1,2,2)
plt.bar(df2.loc[0:5,'month'],df4['pas'])
plt.xlabel('yue份')
plt.ylabel('乘客')
plt.title("yue份——乘客曲线图")
plt.show()

您可能感兴趣的与本文相关的镜像

Python3.9

Python3.9

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

### 使用 Matplotlib 创建图表 Matplotlib 是一个功能强大的 Python 库,能够创建多种类型的图表和可视化图形。无论是数据科学家、工程师还是研究人员,都可以利用 Matplotlib 来探索数据并传达结果[^1]。 #### 安装 Matplotlib 要开始使用 Matplotlib,首先需要确保已安装该库。可以通过 pip 工具轻松完成安装: ```bash pip install matplotlib ``` #### 绘制简单的折线图 下面是一个绘制简单折线图的例子,展示了未来 15 天的最高气温和最低气温的变化趋势[^4]。 ```python import matplotlib.pyplot as plt # 数据准备 days = list(range(1, 16)) high_temps = [22, 24, 27, 30, 32, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44] low_temps = [15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43] plt.figure(figsize=(10, 6)) # 折线图绘制 plt.plot(days, high_temps, label='High Temperatures', marker='o') plt.plot(days, low_temps, label='Low Temperatures', linestyle='--') # 添加标签和标题 plt.title('Temperature Trends Over the Next 15 Days', fontsize=16) plt.xlabel('Day', fontsize=12) plt.ylabel('Temperature (°C)', fontsize=12) # 显示图例 plt.legend() # 展示图表 plt.show() ``` 这段代码会生成一张显示未来 15 天内每天最高温度和最低温度变化趋势的折线图。通过 `marker` 参数可以设置数据点标记样式;而 `linestyle` 则用来指定线条风格。 #### 绘制饼图 对于展示各部分占整体比例的情况,可以选择使用饼图。这里给出一段关于四个分类项 A 至 D 的占比情况的示例代码[^5]。 ```python import matplotlib.pyplot as plt # 准备数据 labels = ['A', 'B', 'C', 'D'] sizes = [15, 30, 45, 10] colors = ['red', 'green', 'blue', 'yellow'] fig, ax = plt.subplots() # 饼图绘制 ax.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', startangle=90) # 设置图表标题 ax.set_title('Pie Chart of Data', fontsize=16) # 展示图表 plt.show() ``` 此段代码将生成一个四类别的饼形分布图,其中每个扇区代表一类项目所占的比例,并附带百分比标注以便于阅读。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值