zoukankan      html  css  js  c++  java
  • Matplotlib 绘图

    一 简介:
    Matplotlib是一个Python 2D绘图库,它可以在各种平台上以各种硬拷贝格式和交互式环境生成出具有出版品质的图形。 Matplotlib可用于Python脚本,Python和IPython shell,Jupyter笔记本,Web应用程序服务器和四个图形用户界面工具包
    Matplotlib试图让简单的事情变得更简单,让无法实现的事情变得可能实现。 只需几行代码即可生成绘图,直方图,功率谱,条形图,错误图,散点图等。 有关示例,请参阅示例图和缩略图库。
    为了简单绘图,pyplot模块提供了类似于MATLAB的界面,特别是与IPython结合使用时。 对于高级用户,您可以通过面向对象的界面或MATLAB用户熟悉的一组函数完全控制线条样式,字体属性,轴属性等。

    官网教程文档:https://matplotlib.org/users/index.html

    二绘制简单的折线图

    import matplotlib.pyplot as plt
    input_values=[1,2,3,4,5]
    squares = [1,4,9,16,25]
    plt.plot(input_values,squares,linewidth=5)
    
    plt.title("Square Numbers",fontsize=24)
    plt.xlabel("Value",fontsize=14)
    plt.ylabel("Square of Value",fontsize=14)
    plt.tick_params(axis='both',labelsize=14)
    
    plt.show()

     运行图像:

    使用scatter() 绘制散点图并设置其样式

    import matplotlib.pyplot as plt
    
    plt.scatter(2,4,s=200)
    plt.title("Square Numbers", fontsize=24)
    plt.xlabel("Value",fontsize = 14)
    plt.ylabel("Square of Value",fontsize=14)
    
    plt.tick_params(axis='both',which='major',labelsize=14)
    
    
    plt.show()

    显示图像

     使用scatter() 绘制一系列的点

    import matplotlib.pyplot as plt
    
    x_values=[1,2,3,4,5]
    y_values=[1,4,9,16,25]
    
    plt.scatter(x_values,y_values,s=200)
    plt.title("Square Numbers", fontsize=24)
    plt.xlabel("Value",fontsize = 14)
    plt.ylabel("Square of Value",fontsize=14)
    
    plt.tick_params(axis='both',which='major',labelsize=14)
    
    
    plt.show()

    图像呈现:

    自动计算数据

    import matplotlib.pyplot as plt
    
    x_values=list(range(1,10001))
    y_values=[x**2 for x in x_values]
    
    plt.scatter(x_values,y_values,s=40)
    plt.title("Square Numbers", fontsize=24)
    plt.xlabel("Value",fontsize = 14)
    plt.ylabel("Square of Value",fontsize=14)
    
    plt.tick_params(axis='both',which='major',labelsize=14)
    plt.axis([0,1100,0,1100000])
    
    plt.show()

    图像显示:

     默认师蓝色的线条和黑色的轮廓,修改颜色为红色:

    plt.scatter(x_values,y_values,c='red',edgecolor='none',s=40)

    也可以用RGB颜色,由浅蓝色组成:

    plt.scatter(x_values,y_values,c=(0,0,0.8),edgecolor='none',s=40)

    值越接近0,指定的颜色越深,值越接近1,指定颜色越浅

    还可以使用颜色映射

    颜色映射是一系列颜色,它们从起始颜色渐变成结束颜色。在可视化中,颜色映射用于突出数据的规律。

    import matplotlib.pyplot as plt
    
    x_values=list(range(1,10001))
    y_values=[x**2 for x in x_values]
    
    plt.scatter(x_values,y_values,c=y_values,cmap=plt.cm.Blues,edgecolor='none',s=40)
    plt.title("Square Numbers", fontsize=24)
    plt.xlabel("Value",fontsize = 14)
    plt.ylabel("Square of Value",fontsize=14)
    
    plt.tick_params(axis='both',which='major',labelsize=14)
    plt.axis([0,1100,0,1100000])
    
    plt.show()

    图像显示:

     保存图表

    要让程序自动将图表保存到文件中,可将对plt.show()的调用替换为plt.savefig()

    plt.savefig('squares_plog.png',bbox_inches='tight')

    会在目录下生成:squares_plog.png文件

  • 相关阅读:
    (七)策略模式详解
    (六)观察者模式详解(包含观察者模式JDK的漏洞以及事件驱动模型)
    递归锁,死锁,使用递归锁解决死锁,信号量
    并发编程中的GIL锁(全局解释器锁)自己理解的他为啥存在
    线程了解以及创建线程的Threading模块中的部分方法
    进程 >> 互斥锁、队列与管道、生产者消费者模型
    进程比较基础的内容
    基于UDP协议的socket套接字编程 基于socketserver实现并发的socket编程
    网络基础 + 简易服务端和客户端
    单例模式
  • 原文地址:https://www.cnblogs.com/hello-wei/p/10497323.html
Copyright © 2011-2022 走看看