用matplotlib使用python绘制两个图,在csv文件第一列是New York的情况下,在第二列开头为“2015/7”,横坐标为2015年7月逐日日期,纵坐标分别为其对应的第三列作一个图,第四列和第五列为纵坐标的情况下再作一个图
时间: 2024-02-16 22:59:50 浏览: 137
好的,这里是代码:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 读取CSV文件
df = pd.read_csv('your_file.csv')
# 选择需要的列
ny_data = df.loc[df['City'] == 'New York', ['Date', 'Column2', 'Column3', 'Column4', 'Column5']]
# 将日期列转换为datetime类型
ny_data['Date'] = pd.to_datetime(ny_data['Date'])
# 创建画布和子图
fig, (ax1, ax2) = plt.subplots(2, 1, figsize=(8, 8))
# 绘制第一个图
ax1.plot(ny_data['Date'], ny_data['Column3'])
ax1.set_xlabel('Date')
ax1.set_ylabel('Column3')
ax1.set_title('Column3 Plot')
# 绘制第二个图
ax2.plot(ny_data['Date'], ny_data['Column4'], label='Column4')
ax2.plot(ny_data['Date'], ny_data['Column5'], label='Column5')
ax2.set_xlabel('Date')
ax2.set_ylabel('Value')
ax2.set_title('Column4 and Column5 Plot')
ax2.legend()
# 调整子图之间的间距
fig.subplots_adjust(hspace=0.5)
# 显示图形
plt.show()
```
这段代码将会绘制两个子图,第一个子图横轴为日期,纵轴为第三列的数据;第二个子图横轴为日期,纵轴分别为第四列和第五列的数据,并在图例中显示每列的名称。请将代码中的“your_file.csv”替换为你的CSV文件名,并将“Column2”、“Column3”、“Column4”和“Column5”替换为你的实际列名。
阅读全文