第三问:
利用柱线混合图形画出合肥市,高新区,庐阳区的pm2.5的值。要求将输出的折线图保存成图像文件,X轴表示时间,柱状表示 高新区 的pm2.5的值,线形表示 庐阳区的pm2.5的值。(5分)
要求:图形中含有图例
说明:此题主要利用了twinx()将柱形图与折线图进行连接放在一起
ax1 = fig.add_subplot(111)
ax2 = ax1.twinx()
代码如下:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from pandas import Series,DataFrame
df = pd.read_csv("new1")
plt.rcParams['font.sans-serif']=['SimHei']
fig = plt.figure(figsize=(10,6))
s1 = df["PM2.5指数"].loc[(df["城市"]=="合肥")&(df["区域"]=="高新区")]
s2 = df["PM2.5指数"].loc[(df["城市"]=="合肥")&(df["区域"]=="庐阳区")]
list_name = ['2018-12-01','2018-12-02','2018-12-03','2018-12-04','2018-12-05','2018-12-06','2018-12-07','2018-12-08','2018-12-09','2018-12-10']
ax1 = fig.add_subplot(111)
ax1.bar(range(len(s1)),s1,tick_label=list_name,label="高新区")
ax1.set_ylabel("高新区的PM2.5值的变化")
# 柱线混合图的连接方式利用twinx(),通过设置ax1和ax2进行连接
ax2 = ax1.twinx()
ax2.plot(list_name,s2,color="red",marker="o",label="庐阳区")
ax2.set_ylabel("庐阳区的PM2.5值的变化")
plt.legend()
plt.title("柱线混合图形高新区,庐阳区的pm2.5的值")
plt.savefig("3.png")
plt.show()
图形如下: