欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

第二节课Matplotlib

程序员文章站 2022-05-22 10:35:57
...

练习1

  • 为了对某一产品进行合理定价,我们对此类商品进行了试销实验,价格与需求量数据如下。利用图表分析规律。
    第二节课Matplotlib
  • price = [60,80,40,30,70,90,95]
  • sales = [100,50,120,135,65,45,40]
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]

需求

  • 示例图如下(基本需求都需实现):
    第二节课Matplotlib
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 in list(range(len(movies_name)))]
p2=[i for i in list(range(len(movies_name)))]
p3=[i+width for i in list(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()
def auto_label(x_po,y_po):
    for x_i,y_i in zip(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()