• python画图之plt.plot


    (43条消息) matplotlib.pyplot.plot()参数详解_ims-的博客-CSDN博客_matplotlib plot

    【python】Matplotlib作图常用marker类型、线型和颜色 - 大大西瓜吃不饱 - 博客园 (cnblogs.com)

    plt.plot()函数详细介绍

    import matplotlib.pyplot as plt
    help(plt.plot)

    plt.plot(x, y, format_string, **kwargs)

    参数说明
    x X轴数据,列表或数组,可选
    y Y轴数据,列表或数组
    format_string 控制曲线的格式字符串,可选
    **kwargs 第二组或更多(x,y,format_string),可画多条曲线
    format_string 由颜色字符、风格字符、标记字符组成
    • 颜色字符
      • 'b' 蓝色 'm' 洋红色 magenta
      • 'g' 绿色 'y' 黄色
      • 'r' 红色 'k' 黑色
      • 'w' 白色 'c' 青绿色 cyan
      • '#008000' RGB某颜色 '0.8' 灰度值字符串
      • 多条曲线不指定颜色时,会自动选择不同颜色
    • 风格字符
      • '‐' 实线
      • '‐‐' 破折线
      • '‐.' 点划线
      • ':' 虚线
      • '' ' ' 无线条
    • 标记字符
      • '.' 点标记
      • ',' 像素标记(极小点)
      • 'o' 实心圈标记
      • 'v' 倒三角标记
      • '^' 上三角标记
      • '>' 右三角标记
      • '<' 左三角标记
      • ``'.'`` point marker
        ``','`` pixel marker
        ``'o'`` circle marker
        ``'v'`` triangle_down marker
        ``'^'`` triangle_up marker
        ``'<'`` triangle_left marker
        ``'>'`` triangle_right marker
        ``'1'`` tri_down marker
        ``'2'`` tri_up marker
        ``'3'`` tri_left marker
        ``'4'`` tri_right marker
        ``'s'`` square marker
        ``'p'`` pentagon marker 五角星形
        ``'*'`` star marker
        ``'h'`` hexagon1 marker  六边形
        ``'H'`` hexagon2 marker
        ``'+'`` plus marker
        ``'x'`` x marker
        ``'D'`` diamond marker
        ``'d'`` thin_diamond marker
        ``'|'`` vline marker
        ``'_'`` hline marker

    b = np.arange(5)
    plt.plot(b,b*1.0,'g.-',b,b*1.5,'rx',b,b*2.0, 'b')
    plt.show()
    
     

    **kwargs : 第二组或更多(x,y,format_string)

    color : 控制颜色, color='green'
    linestyle : 线条风格, linestyle='dashed'
    marker : 标记风格, marker='o'
    markerfacecolor: 标记颜色, markerfacecolor='blue'
    markersize: 标记尺寸, markersize=20

    假如希望标记的颜色和线条的颜色不同,那么就这样用:

    plt.plot(x,y,'g-')
    plt.plot(x,y,'r.')
    plt.show()

    即,把plt.show()写在最后一句就行了。

    坐标轴的设置:

    (46条消息) Matplotlib数据可视化——设置坐标轴,原点,图例_量子孤岛的博客-CSDN博客_matplotlib坐标原点

    今天突破了导轨和转台的调试程序,学习会Python娱乐一下
    matplotlib库和MATLAB的数据可视化功能几乎是相同,只是因为人工智能的火爆以及使用方便深受大家喜爱。

    1.基本使用
    1.1figure图像
    绘制单一函数的图像

    import numpy as np
    import matplotlib.pyplot as plt

    x = np.linspace(0, 1, 30)
    y = 3*x + 1
    plt.plot(x, y)
    plt.show()

    绘制两个函数

    import matplotlib.pyplot as plt
    import numpy as np

    x = np.linspace(-3, 3, 50) # 注意linspace不是linespace
    y1 = 2*x+1
    y2 = x**2+1 # 乘方注意和C的区别
    # 绘制第一个函数
    plt.figure()
    plt.plot(x, y1)
    # 绘制第二个函数
    plt.figure(num=3, figsize=(6, 6))
    plt.plot(x, y2)

    plt.show()


    绘制在同一坐标系中

    import matplotlib.pyplot as plt
    import numpy as np

    x = np.linspace(-3,3,50)
    y1 = 2*x+1
    y2 = x**2

    #绘制在同一个figure中
    plt.figure()
    plt.plot(x, y1)
    plt.plot(x, y2, color='violet', linewidth=3.0, linestyle='--') # 指定颜色,线宽和线型
    plt.show()


    1.2 坐标轴的设置
    截取x,y的某一区间进行展示
    设置x,y的标签
    设置某一轴的刻度间隔划分
    设置坐标值对应的相应含义并正则化设置字体格式
    import matplotlib.pyplot as plt
    import numpy as np
    x = np.linspace(-3,3,50)
    y1 = 2*x+1
    y2 = x**2

    #绘制在同一个figure中
    plt.figure()
    plt.plot(x,y1)
    plt.plot(x,y2,color='red',linewidth = 2.0,linestyle = '--')#指定颜色,线宽和线型

    #截取x,y的某一部分
    plt.xlim((-1,2))
    plt.ylim((-2,3))
    #设置x,y的坐标描述标签
    plt.xlabel("I am x")
    plt.ylabel("I am y")
    #设置x刻度的间隔
    new_ticks = np.linspace(-1,2,5)
    plt.xticks(new_ticks)
    plt.yticks([-2, -1.5, 0, 1.5, 3],
    [r'$Really\ bad\ \alpha$', r'$bad$', r'$normal$', r'$good$', r'$very\ good$'])#r表示正则化,$$表示用数学字体输出

    plt.show()


    移动坐标轴的位置
    隐藏上下左右的某一个轴
    import matplotlib.pyplot as plt
    import numpy as np

    x = np.linspace(-3,3,50)
    y1 = 2*x+1
    y2 = x**2

    #绘制在同一个figure中
    plt.figure()
    plt.plot(x,y1)
    plt.plot(x,y2,color='red',linewidth = 2.0,linestyle = '--')#指定颜色,线宽和线型

    #截取x,y的某一部分
    plt.xlim((-1,2))
    plt.ylim((-2,3))
    #设置x,y的坐标描述标签
    plt.xlabel("I am x")
    plt.ylabel("I am y")
    #设置x刻度的间隔
    new_ticks = np.linspace(-1,2,5)
    plt.xticks(new_ticks)
    plt.yticks([-2, -1.5, 0, 1.5, 3],
    [r'$Really\ bad\ \alpha$', r'$bad$',
    r'$normal$', r'$good$', r'$very\ good$'])
    #r表示正则化,$$表示用数学字体输出
    # gca = 'get current axis'
    ax = plt.gca()#获取当前坐标的位置
    #去掉坐标图的上和右 spine翻译成脊梁
    ax.spines['right'].set_color('None')
    ax.spines['top'].set_color('None')
    #指定坐标的位置
    ax.xaxis.set_ticks_position('bottom') # 设置bottom为x轴
    ax.yaxis.set_ticks_position('left') # 设置left为x轴
    ax.spines['bottom'].set_position(('data',0))#这个位置的括号要注意
    ax.spines['left'].set_position(('data',0))
    plt.show()

    1.3设置legend图例
    最简单的方法就是在plot中打上label然后用legend( )方法实现

    import matplotlib.pyplot as plt
    import numpy as np

    x = np.linspace(-3,3,50)
    y1 = 2*x+1
    y2 = x**2

    #绘制在同一个figure中
    plt.figure()
    plt.plot(x,y1,label='山高月小')
    plt.plot(x,y2,color='red',linewidth = 2.0,linestyle = '--',label='水落石出')#指定颜色,线宽和线型

    plt.legend()
    plt.show()

    如图所示,中文出现乱码,上网查了一下,需要在开头加上

    plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
    plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
    1
    2
    这时显示正常了

    更加高级的方法

    import matplotlib.pyplot as plt
    import numpy as np
    plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
    plt.rcParams['axes.unicode_minus']=False #用来正常显示负号

    x = np.linspace(-3,3,50)
    y1 = 2*x+1
    y2 = x**2

    #绘制在同一个figure中
    plt.figure()
    l1, = plt.plot(x,y1,label='山高月小')#放在handles中l1一定要加,
    l2, = plt.plot(x,y2,color='red',linewidth = 2.0,linestyle = '--',label='水落石出')

    plt.legend(handles=[l1, l2,],labels=['小舟从此逝','江海寄余生'],loc='best')
    plt.show()



    如果只打印l1的图例,则修改

    plt.legend(handles=[l1,],labels=['小舟从此逝',],loc='best')
    1

    未完待续~~
    ————————————————
    版权声明:本文为CSDN博主「量子孤岛」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/fly_wt/article/details/84147063

  • 相关阅读:
    RabbitMQ + PHP (二)AMQP拓展安装
    RabbitMQ + PHP (一)入门与安装
    使用 Selenium 实现基于 Web 的自动化测试
    Selenium私房菜系列4 -- Selenium IDE的使用
    解决火狐浏览器安装不上Selenium IDE插件“此附加组件无法安装”
    (技术分享) 解决 Firefox 显示“已阻止载入混合活动内容”的问题
    MyEclipse打开 HTML 报错Failed to create the part's controls
    python2x与python3x的区别
    Python基础总结
    Mycat 读写分离+分库分表
  • 原文地址:https://www.cnblogs.com/yibeimingyue/p/15805649.html
Copyright © 2020-2023  润新知