当前位置:   article > 正文

matplotlib库—数据可视化

matplotlib库

1.matplotlib库是python的绘图库,可以很轻松的进行数据图形化,并提供多样化的输出格式

2.Matplotlib库常常与Numpy库,scipy库进行联合使用,这种组合广泛用于替代MatLab,是一个强大的科学计算环境,有助于我们通过python学习数据科学或者机器学习

3.Matplotlib应用——

    1.折线图

  1. import matplotlib.pyplot as plt
  2. import numpy as np
  3. plt.figure(figsize=(16, 9), dpi=80)
  4. plt.rcParams["font.sans-serif"] = ["SimHei"]
  5. x = np.arange(1, 11, 1)
  6. y_ticks = np.arange(0, 101, 10)
  7. y = np.random.randint(1, 100, size=(10))
  8. y_2 = np.random.randint(1, 100, size=(10))
  9. plt.plot(x, y, label="最高标准")
  10. plt.plot(x, y_2, label="最低标准", color="r")
  11. plt.xticks(x)
  12. plt.yticks(y_ticks)
  13. plt.ylim(0, 110)
  14. plt.xlim(0, 11)
  15. plt.xlabel("x轴")
  16. plt.ylabel("y轴")
  17. plt.title("折线图")
  18. plt.text(1, 10, "解释说明")
  19. plt.legend()
  20. plt.show()
'
运行

         2.柱状图

  1. import matplotlib.pyplot as plt
  2. import numpy as np
  3. y = np.arange(10, 101, 10)
  4. x = np.arange(1, 11)
  5. label = ["一", "二", "三", "四", "五", "六", "七", "八", "九", "十"]
  6. plt.rcParams["font.sans-serif"] = ["SimHei"]
  7. plt.figure(figsize=(16, 9), dpi=80)
  8. plt.bar(x, y, width=0.5, label="完成量", color="#ed5736")
  9. plt.xticks(np.arange(1, 11, 1), label)
  10. plt.title("测试", fontsize=50)
  11. plt.text(1, 10, "10%", weight="bold", color="b", fontsize=20, ha="center", va="bottom")
  12. plt.text(2, 20, "20%", weight="bold", color="r", fontsize=20, verticalalignment='bottom', horizontalalignment="center")
  13. plt.text(3, 30, "30%", weight="bold", color="r", fontsize=20, verticalalignment='bottom', horizontalalignment="center")
  14. plt.text(4, 40, "40%", weight="bold", color="r", fontsize=20, verticalalignment='bottom', horizontalalignment="center")
  15. plt.text(5, 50, "50%", weight="bold", color="r", fontsize=20, verticalalignment='bottom', horizontalalignment="center")
  16. plt.text(6, 60, "60%", weight="bold", color="r", fontsize=20, verticalalignment='bottom', horizontalalignment="center")
  17. plt.text(7, 70, "70%", weight="bold", color="r", fontsize=20, verticalalignment='bottom', horizontalalignment="center")
  18. plt.text(8, 80, "80%", weight="bold", color="r", fontsize=20, verticalalignment='bottom', horizontalalignment="center")
  19. plt.text(9, 90, "90%", weight="bold", color="r", fontsize=20, verticalalignment='bottom', horizontalalignment="center")
  20. plt.text(10, 100, "100%", weight="bold", color="r", fontsize=20, verticalalignment='bottom',
  21. horizontalalignment="center")
  22. plt.annotate("未达标平均线", xy=(1, 80), arrowprops=dict(arrowstyle="<->"), fontsize=20, xytext=(1, 60))
  23. plt.ylim(0, 120)
  24. plt.xlim(0, 11)
  25. plt.axhline(80, linestyle="--", color="r", label="80%水平线", )
  26. plt.xlabel("x轴", fontsize=24)
  27. plt.ylabel("y轴", fontsize=24)
  28. plt.legend(loc="upper left", fontsize=20)
  29. plt.grid( axis="y", )
  30. plt.show()
'
运行

          3.雷达图

  1. import matplotlib.pyplot as plt
  2. import numpy as np
  3. plt.figure(figsize=(16, 9), dpi=80)
  4. plt.rcParams["font.sans-serif"] = ["SimHei"]
  5. data =np.random.rand(6,6)
  6. # rradar_labels=["研究型(I)","艺术性(A)","社会性(S)","企业性(E)","传统性(C)","现实性(R)"]
  7. # radar_labels= np.concatenate((radar_labels,[radar_labels[0]]))
  8. anghles=np.linspace(0,2*np.pi,6,endpoint=False)
  9. anghles = np.concatenate((anghles,[anghles[0]]))
  10. data=np.concatenate((data,[data[0]]))
  11. plt.polar(anghles,data)
  12. plt.thetagrids((anghles*180/np.pi))
  13. plt.fill(anghles,data,alpha=0.25)
  14. plt.show()
'
运行

yyds呀!

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/963799
推荐阅读
相关标签
  

闽ICP备14008679号