更新时间:2022年03月25日14时15分 来源:传智教育 浏览次数:
高尔基说:“书籍是人类进步的阶梯。”据统计韩国人年均阅读量为7本,日本人年均阅读量为40本。相比较而言,中国人的阅读量还有进步空间。已知地区1和地区2对各类图书的采购情况如表4-3所示。
表4-3 地区1和地区2对各类图书的采购情况
根据表4-3的数据,将“图书种类”一列的数据作为x轴的刻度标签,将“地区1”和“地区2”两列数据作为y轴对应的两组数据,绘制反映地区1和地区2对各类图书的采购情况的堆积柱形图,并分别使用“#FFCC00”和“#B0C4DE”这两种颜色进行区分,具体代码如下。
In [5]: # 01_book_purchase import numpy as np import matplotlib.pyplot as plt plt.rcParams["font.sans-serif"] = ["SimHei"] plt.rcParams["axes.unicode_minus"] = False x = np.arange(5) y1 = [1200, 2400, 1800, 2200, 1600] y2 = [1050, 2100, 1300, 1600, 1340] bar_width = 0.6 tick_label = ["家庭", "小说", "心理", "科技", "儿童"] fig = plt.figure() ax = fig.add_subplot(111) # 绘制柱形图,并使用颜色 ax.bar(x, y1, bar_width, color="#FFCC00", align="center", label="地区1") ax.bar(x, y2, bar_width, bottom=y1, color="#BOC4DE", align="center", label="地区2") ax.set_ylabel("采购数量(本)") ax.set_xlabel("图书种类") ax.set_title("地区1和地区2对各类图书的采购情况") ax.grid(True, axis='y', color="gray", alpha=0.2) ax.set_xticks(x) ax.set_xticklabels(tick_label) ax.legend() plt.show()
运行程序,效果如图4-1所示。
图4-1 地区1和地区2对各类图书的采购情况的堆积柱形图
图4-1中,每个柱形由两种不同颜色的矩形条堆积而成,其中上方的浅蓝色矩形条代表地区2的采购数量,下方的淡黄色矩形条代表地区1的采购数量。由图4-1可知,明亮的颜色给人轻快的感觉,而不同于之前的深色给人厚重的感觉。