matplotlib 柱状图

import matplotlib
import matplotlib.pyplot as plt
import numpy as np

if __name__ == "__main__":

    # 0、修改支持中文的字体
    plt.rcParams["font.sans-serif"] = ["SimHei"] # 设置字体
    plt.rcParams["axes.unicode_minus"] = False # 解决图像中 "-" 负号乱码问题

    movie_names = ['雷神3:诸神黄昏', '正义联盟', '东方快车谋杀案', '寻梦环游记', '全球风暴', '降魔传', '追捕',
                   '七十七天', '密战', '狂兽', '其它']
    tickets = [73853, 57767, 22354, 15969, 14839, 8725, 8716, 8318, 7916, 6764, 52222]

    plt.figure(figsize=(20, 8), dpi=80)

    x_ticks = range(len(movie_names))

    plt.bar(x_ticks, tickets, color=['b', 'r', 'g', 'y', 'c', 'm', 'y', 'k', 'c', 'g', 'b'])
    plt.xticks(x_ticks, movie_names)
    # 等同
    # plt.bar(movie_names, tickets, color=['b', 'r', 'g', 'y', 'c', 'm', 'y', 'k', 'c', 'g', 'b'])

    plt.title("票房收入对比")
    plt.ylabel("单位(万元)")

    plt.show()

首日和首周票房对比

import matplotlib
import matplotlib.pyplot as plt
import numpy as np

if __name__ == "__main__":

    # 0、修改支持中文的字体
    plt.rcParams["font.sans-serif"] = ["SimHei"] # 设置字体
    plt.rcParams["axes.unicode_minus"] = False # 解决图像中 "-" 负号乱码问题

    # 对比首日和首周的票房
    movie_name = ['雷神3:诸神黄昏', '正义联盟', '寻梦环游记']
    first_day = [10587.6, 10062.5, 1275.7]
    first_weekend = [36224.9, 34479.6, 11830]

    plt.figure(figsize=(20, 8), dpi=80)

    plt.bar(range(3), first_day, width=0.2, label="首日票房")
    plt.bar([0.2 + i for i in range(3)], first_weekend, width=0.2, label="首周票房")
    plt.xticks([0.1 + i for i in range(3)], movie_name)

    plt.ylabel("单位(万元)")

    plt.legend()

    plt.show()

应用场景:适用于分类数据对比,1、数量统计;2、用户数量对比分析;

 

posted @ 2023-02-21 21:16  correct  阅读(21)  评论(0)    收藏  举报