zoukankan      html  css  js  c++  java
  • matplotlib 各种图绘制

    散点图绘制

    from matplotlib import pyplot as plt
    import random
    from matplotlib import font_manager
    
    myfont = font_manager.FontProperties(fname="C:WindowsFontssimkai.ttf")
    
    # x轴显示日期
    x_3 = range(1,32)
    x_10 = range(51,82)
    
    # 设置一个0~40随机温度显示在y轴
    y_3 = [random.randint(0,40) for i in range(1,32)]
    y_10 = [random.randint(0,40) for i in range(1,32)]
    
    # 设置图形大小
    plt.figure(figsize=(20, 8) ,dpi=80)

    # 散点图用scatter plt.scatter(x_3,y_3,label
    = "3月份") plt.scatter(x_10, y_10, label = "10月份") # 调整x的刻度 _x = list(x_3)+list(x_10) _xtick = ["3月{}日".format(i) for i in x_3] _xtick +=["10月{}日".format(i-50) for i in x_10] plt.xticks(_x[::3], _xtick[::3] , rotation= 40, fontproperties= myfont) # 设置标题 plt.xlabel("期日", fontproperties = myfont) plt.ylabel("温度", fontproperties = myfont) plt.title("三月份和十月份温度", fontproperties = myfont) # 设置图形lebel显示位置 plt.legend(loc = 2,prop = myfont) plt.show()

    条形图绘制

    from matplotlib import pyplot as plt
    import random
    from matplotlib import font_manager
    
    myfont = font_manager.FontProperties(fname="C:WindowsFontssimkai.ttf")
    
    a = ["我的女朋友","你的女朋友", "他的女朋友"]
    
    b = [random.randint(0,100) for i in range(3)]
    
    # 竖着
    # plt.bar(range(len(a)),b,width=0.25)
    # 横着
    plt.barh(range(len(a)),b,height= 0.25)
    
    
    plt.yticks(range(len(a)),a,fontproperties = myfont)
    
    plt.show()

    多条条形统计图

    from matplotlib import pyplot as plt
    from  matplotlib import font_manager
    import random
    
    myfont = font_manager.FontProperties(fname="C:WindowsFontssimkai.ttf")
    
    a = ["我的女朋友","你的女朋友", "他的女朋友"]
    # 随机生成十个以内的女朋友
    b_2017 = [random.randint(0,10) for i in range(3)]
    b_2018 = [random.randint(0,10) for i in range(3)]
    b_2019 = [random.randint(0,10) for i in range(3)]
    
    # 每个宽度0.2
    bar_with = 0.2
    # 设置2017年的x坐标
    b_x2017 = list(range(len(b_2017)))
    # 设置2018年的x坐标
    b_x2018 = [i + bar_with for i in b_x2017]
    # 设置2019年x的坐标
    b_x2019 = [i + bar_with*2 for i in b_x2017]
    
    # 将x的坐标引入进去,不能一样否则会重叠
    plt.bar(b_x2017, b_2017,width=bar_with, label = "2017年")
    plt.bar(b_x2018, b_2018,width=bar_with,label = "2018年")
    plt.bar(b_x2019, b_2019,width=bar_with,label = "2019年")
    
    plt.legend(prop= myfont)
    # 设置x的刻度
    plt.xticks(b_x2018,a,fontproperties = myfont)
    
    plt.ylabel("单位:个",fontproperties = myfont,rotation = 0)
    plt.title("你我他每年的女朋友" , fontproperties = myfont)
    
    plt.show()
  • 相关阅读:
    重构原则
    【重构:改善既有代码的设计】读书笔记——开篇
    C#值参数和引用参数
    使用Aspose.Cells利用模板导出Excel(C#)
    在MVC中使用rdlc格式的报表
    程序员如何高效学习
    IT 圈里有哪些经常被读错的词?
    VS2017生成解决方案报错,提示对路径的访问被拒绝
    JavaScript中的数值转换
    Xadmin的配置及使用
  • 原文地址:https://www.cnblogs.com/wocaonidaye/p/12764015.html
Copyright © 2011-2022 走看看