from matplotlib import pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
x =[60,80,40,30,70,90,95]
y =[100,50,120,135,65,45,40]
plt.figure(figsize=(13,8))
width=1.5
x_bar=np.arange(7)
plt.title('价格与需求量的关系')
plt.grid(True)
plt.bar(x,y,align='center',bottom=30,width=width,color='purple')
plt.show()
练习二
电影数据如下:
movies_name = [“变身特工”,“美丽人生”,“鲨海逃生”,“熊出没·狂野大陆”]
day_12 = [2358,399,2358,362]
day_13 = [12357,156,2045,168]
day_14 = [15746,312,4497,319]
需求
示例图如下(基本需求都需实现):
from matplotlib import pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
plt.figure(figsize=(14,8))
movies_name =["变身特工","美丽人生","鲨海逃生","熊出没·狂野大陆"]
day_12 =[2358,399,2358,362]
day_13 =[12357,156,2045,168]
day_14 =[15746,312,4497,319]
width=0.2
p1=[i-width for i inlist(range(len(movies_name)))]
p2=[i for i inlist(range(len(movies_name)))]
p3=[i+width for i inlist(range(len(movies_name)))]
plt.bar(p1,day_12,width=width,color='red',label='d_12')
plt.bar(p2,day_13,width=width,color='yellow',label='d_13')
plt.bar(p3,day_14,width=width,color='green',label='d_14')
x_l=np.arange(len(movies_name))
x_t=["变身特工","美丽人生","鲨海逃生","熊出没·狂野大陆"]
plt.title('2020年12至14日电影票房')# for a,b in zip(movies_name,[day_12,day_13,day_14]):# plt.text(a,b,)
plt.legend()defauto_label(x_po,y_po):for x_i,y_i inzip(x_po,y_po):
plt.annotate(f"{y_i}",xy=(x_i,y_i),xytext=(x_i,y_i-0.1))
auto_label(p1,day_12)
auto_label(p2,day_13)
auto_label(p3,day_14)
plt.show()