一、matplotlib绘制折线图

  • matplotlib绘图的实质是折线图,将所有的点用直线连接起来,由于距离比较密,看起来像是个平滑的曲线;
  1. import matplotlib as mpl:加载matplotlib模块;
  2. from matplotlib import pyplot as plt:一般多用matplotlib的子模块pyplot,然后直接调用pyplot的相应函数即可;
  3. 最简单的绘图:
    from matplotlib import pyplot as plt
    import numpy as np # 从[0, 10]区间内,等分取出100个点(包含0和10);
    x = np.linspace(0, 10, 100)
    y = np.sin(x) # 绘制以x为横轴,y为纵轴,绘图,生成matplotlib.lines.Line2D对象
    plt.plot(x, y) # 使用plt的show函数显示图线对象
    plt.show()
  4. 一个图内绘制多条曲线:
    from matplotlib import pyplot as plt
    import numpy as np x = np.linspace(0, 10, 100)
    siny = np.sin(x)
    cosy = np.cos(x) # 绘制多条曲线后再显示所有的线,才可以在同一个图内显示多条线
    plt.plot(x, siny)
    plt.plot(x, cosy)
    plt.show()
  5. 改变线条颜色、线型、坐标轴范围(x轴、y轴的范围):具体颜色种类和线型的种类可查matplotliib文档;“:”:表示"...."点虚线、“-.”:表示“-.-.-.-.-.”横杠 + 点、“--”:两个横杠表示“------”横杠虚线、“-”:一个横杠表示默认实线;
    plt.plot(x, siny)
    
    # 将cosy曲线的颜色调整为红色,线型为虚线
    plt.plot(x, cosy, color = 'red', linestyle = '--') # 分别限定横纵坐标范围:横轴在[5, 8],纵轴在[0, 1]
    plt.xlim(5, 8)
    plt.ylim(0, 1) # 也可以同时限定两个坐标轴的范围,默认两面两个参数为横坐标范围,后面两个参数为纵坐标范围
    plt.axis([5, 8, 0, 1]) plt.show()
  6. 添加坐标轴的label、曲线的图式、图标的title:
    from matplotlib import pyplot as plt
    import numpy as np x = np.linspace(0, 10, 100)
    siny = np.sin(x)
    cosy = np.cos(x) # 添加图式:label
    plt.plot(x, siny, label = 'sin(x)')
    plt.plot(x, cosy, color = 'red', linestyle = '--', label = 'cos(x)') # 添加横、纵左边的名称
    plt.xlabel("x axis")
    plt.ylabel("y value") # 添加图表标题:title
    plt.title('Welcome to the Machine-Learn World') # 显示图式label
    plt.legend() plt.show()

二、matplotlib绘制散点图:Scatter Plot

  • 直接调用plt.scatter()函数即可,和plt.plot()用法一样
  • 对于折现图,横轴表示特征,纵轴表示取值;
  • 对于散点图,通常横、纵两个轴均表示特征,对用于绘制二维特征:将特征点打在图像上,用不同的颜色代替label;
  1. 绘制简单散点图:

    from matplotlib import pyplot as plt
    import numpy as np x = np.linspace(0, 10, 100)
    siny = np.sin(x)
    cosy = np.cos(x) # 添加图式:label
    plt.scatter(x, siny)
    plt.scatter(x, cosy, color = "red")
    plt.show()
  2. 设置散点的透明度:0~1,0表示全透明,1表示完全不透明;
    x = np.random.normal(0, 1, 10000)
    y = np.random.normal(0, 1, 10000) # 透明度设置为0.5
    plt.scatter(x, y, alpha = 0.5)
  3. 散点图有很多样式,可查看matplotlib文档了解;

机器学习:Jupyter Notebook中Matplotlib的使用的更多相关文章

  1. 第三十六篇 入门机器学习——Jupyter Notebook中的魔法命令

        No.1.魔法命令的基本形式是:%命令   No.2.运行脚本文件的命令:%run %run 脚本文件的地址 %run C:\Users\Jie\Desktop\hello.py # 脚本一旦 ...

  2. 解决在jupyter notebook中遇到的ImportError: matplotlib is required for plotting问题

    昨天学习pandas和matplotlib的过程中, 在jupyter notebook遇到ImportError: matplotlib is required for plotting错误, 以下 ...

  3. 机器学习:Jupyter Notebook中numpy的使用

    一.Jupyter Notebook的魔法命令 # 模块/方法 + ?或者help(模块/方法):查看模块/方法的解释文档: 1)%run # 机械学习中主要应用两个魔法命令:%run.%timeit ...

  4. 非线性函数的最小二乘拟合及在Jupyter notebook中输入公式 [原创]

    突然有个想法,能否通过学习一阶RC电路的阶跃响应得到RC电路的结构特征——时间常数τ(即R*C).回答无疑是肯定的,但问题是怎样通过最小二乘法.正规方程,以更多的采样点数来降低信号采集噪声对τ估计值的 ...

  5. jupyter notebook中No module named 'tensorflow'

    当我们在jupyter notebook中运行时可能会遇见没有某个包的情况,如下: ---------------------------------------------------------- ...

  6. 在jupyter notebook中同时安装python2和python3

    之前讨论过在anaconda下安装多个python版本,本期来讨论下,jupyter notebook中怎样同时安装python2.7 和python3.x. 由于我之前使用的jupyter note ...

  7. TensorFlow Jupyter Notebook 和matplotlib安装配置

    Jupyter Notebook 和matplotlib Jupyter Notebook安装 Python 3 : python3 -m pip install --upgrade pip pyth ...

  8. 在jupyter notebook中运行R语言

    要想在jupyter notebook中运行R语言其实非常简单,按顺序安装下面扩展包即可: install.package('repr','IRdisplay','evaluate','crayon' ...

  9. 在jupyter notebook 中同时使用安装不同版本的python内核-从而可以进行切换

    在安装anaconda的时候,默认安装的是python3.6 但是cs231n课程作业是在py2.7环境下运行的.所以需要在jupyter notebook中安装并启用python2.7版本 方法: ...

随机推荐

  1. [Android]彻底去除Google AdMob广告

    应用中包含广告是能够理解的,但经常造成用户误点,或者广告切换时造成下载流量,就有点让人不舒服了. 以下就以Google AdMob广告为例,看怎样彻底去除他. 先分析一下Google AdMob的工作 ...

  2. 【python】-- GIL锁、线程锁(互斥锁)、递归锁(RLock)

    GIL锁 计算机有4核,代表着同一时间,可以干4个任务.如果单核cpu的话,我启动10个线程,我看上去也是并发的,因为是执行了上下文的切换,让看上去是并发的.但是单核永远肯定时串行的,它肯定是串行的, ...

  3. Delphi 7里Messages.pas里所有104种重定义消息种类,180种不同的消息名称

    Delphi 7里Messages.pas里所有消息.经统计,共104种重定义消息种类,方便使用,180种不同的消息名称.省得像VC里一样,处处自己解析wParam和LParam参数进行分析.有空我要 ...

  4. [转】IIS:Do not nest virtual directories

    原文:https://msdn.microsoft.com/en-us/library/ms178685.aspx#Anchor_6 Configuration settings for virtua ...

  5. Windows下重置MySQL密码(最开始是因为Access denied for user 'root'@'localhost'这个原因,无法登陆 'root'@'localhost')

    本人使用的MySQL5.5,其他版本未测试过. 方法一: 更改密码: mysql -u root -p Enter password:*** mysql>use mysql; 选择数据库 Dat ...

  6. linux 基础2-null,cut,wc,head,tail

    一. 特殊文件: /dev/null和/dev/tty Linux系统提供了两个对Shell编程非常有用的特殊文件,/dev/null和/dev/tty.其中/dev/null将会丢掉所有写入它的数据 ...

  7. Python 面试题(上)

    Python语言特性 1 Python的函数参数传递 看两个例子: a = 1 deffun(a): a = 2 fun(a) printa # 1 a = [] deffun(a): a.appen ...

  8. iview 表单相关

    view表单验证的步骤: 第一步:给 Form 设置属性 rules :rules第二步:同时给需要验证的每个 FormItem 设置属性 prop 指向对应字段即可 prop=”“第三步:注意:Fo ...

  9. (转载)C#格式规范

    前言 之前工作中整理的一篇编码规范. 代码注释 注释约定 只在需要的地方加注释,不要为显而易见的代码加注释使用 /// 生成的xml标签格式的文档注释 方法注释 所有的方法都应该以描述这段代码的功能的 ...

  10. linux 指令(经常更新)

    添加一个服务 # sudo update-rc.d 服务名 defaults 99 删除一个服务 # sudo update-rc.d 服务名 remove 临时重启一个服务 # /etc/init. ...