matplotlib 订阅
Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。 展开全文
Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。
信息
元    素
x轴和y轴
外文名
Matplotlib
作    用
绘图
所属领域
计算机
中文名
绘图库
spring cloudSpring Cloud组成
Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形 [1]  。通过 Matplotlib,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率谱,条形图,错误图,散点图等。Matplotlib基础知识1.Matplotlib中的基本图表包括的元素x轴和y轴水平和垂直的轴线x轴和y轴刻度刻度标示坐标轴的分隔,包括最小刻度和最大刻度x轴和y轴刻度标签表示特定坐标轴的值绘图区域实际绘图的区域2.hold属性hold属性默认为True,允许在一幅图中绘制多个曲线;将hold属性修改为False,每一个plot都会覆盖前面的plot。但是不推荐去动hold这个属性,这种做法(会有警告)。因此使用默认设置即可。3.网格线grid方法使用grid方法为图添加网格线设置grid参数(参数与plot函数相同).lw代表linewidth,线的粗细.alpha表示线的明暗程度4.axis方法如果axis方法没有任何参数,则返回当前坐标轴的上下限5.xlim方法和ylim方法除了plt.axis方法,还可以通过xlim,ylim方法设置坐标轴范围6.legend方法两种传参方法:【推荐使用】在plot函数中增加label参数在legend方法中传入字符串列表配置matplotlib参数永久配置matplotlib配置信息是从配置文件读取的。在配置文件中可以为matplotlib的几乎所有属性指定永久有效的默认值安装级配置文件(Per installation configuration file)Python的site-packages目录下(site-packages/matplotlib/mpl-data/matplotlibrc)系统级配置,每次重新安装matplotlib后,配置文件会被覆盖如果希望保持持久有效的配置,最好选择在用户级配置文件中进行设置对本配置文件的最佳应用方式,是将其作为默认配置模板用户级.matplotlib/matplotlibrc文件(Per user .matplotlib/matplotlibrc)用户的Documents and Settings目录可以用matplotlib.get_configdir()命令来找到当前用户的配置文件目录当前工作目录代码运行的目录在当前目录下,可以为目录所包含的当前项目代码定制matplotlib配置项。配置文件的文件名是matplotlibrc在Windows系统中,没有全局配置文件,用户配置文件的位置在C:\Documents and Settings\yourname\.matplotlib。在Linux系统中,全局配置文件的位置在/etc/matplotlibrc,用户配置文件的位置在$HOME/.matplotlib/matplotlibrc。动态配置程序中配置代码To finetune settings only for that execution; this overwrites every configuration file.配置方法的优先级为:Matplotlib functions in Python codematplotlibrc file in the current directoryUser matplotlibrc fileGlobal matplotlibrc filercParams方法通过rcParams字典访问并修改所有已经加载的配置项
收起全文
精华内容
参与话题
问答
  • matplotlib

    千次阅读 多人点赞 2019-04-20 19:19:46
    今天我们来介绍一下python的一个可视化工具matplotlib matplotlib 使用matplotlib的方式有很多,但最通常的是Pylab模式的ipython(-ipython –pylab) matplotlib的api都位于matplotlib.pyplot中,所以一般的引入方式...

    今天我们来介绍一下python的一个可视化工具matplotlib

    matplotlib

    使用matplotlib的方式有很多,但最通常的是Pylab模式的ipython(-ipython –pylab)

    matplotlib的api都位于matplotlib.pyplot中,所以一般的引入方式为:

    import matplotlib.pyplot as plt
    

    Figure、Subplot

    Figure

    matplitlib的图像必须在Figure中,Figure创建方式如下:

    fig = plt.figure() # 之后会弹出一个Figure窗口
    

    创建好Figure后,并不能直接绘图,需要使用add_subplot创建一个或多个子图,在子图中绘图,创建方式如下:

    ax1 = fig.add_subplot(2,2,1) # 将figure分为四块,在第一块创建一个子图;返回AxesSubplot对象
    

    之后我们就可以绘制我们的图像了

    plt.plot(randn(50).cumsum(), 'k--') 
    

    Figure和subplot的创建经常使用,所以matplotlib提供了简洁的创建方式:

    fig, axes = plt.subplots(2,3) # 创建一个新Figure、并返回一个含有已创建subplot对象的Numpy数组 
    ax = axes[0,1] # 引用第一行第二列的subplot对象
    

    该函数的一些参数选项:

    在这里插入图片描述

    调整图像之间的间距

    通常情况下,matplotlib会在subplot外围留下一些边距,并在subplot之间留下一些间距。

    我们可以利用subplots_adjust()函数来修改间距

    subplots_adjust(left=None,bootom=None,right=None,top=None,wspace=None,hspace=None) # 该函数是一个顶级函数;wspace、hspace用来控制宽度和高度的百分比,用作subplot之间的间距
    plt.subplots_adjust(wspace=0, hspace=0) # 设置subplots之间的间距为0
    
    颜色、线型和标记

    matplotlib的plot()函数接受一组X和Y坐标,和一个表示颜色和线形的字符串

    ax.plot(x,y,'g--') # 根据x,y绘制绿色虚线
    # ax为一subplot
    

    刻度、标签和图例

    设置X轴范围:
    plt.xlim() # 返回当前X轴的范围
    plt.xlim([0,10]) # 将X轴的范围设为[0, 10]
    # 以上方法都只对当前或最近创建的Subplot起作用
    
    设置标题、轴标签、刻度以及刻度标签
    • 设置标题

      ax.set_title("My first matplotlib plot") # 设置对应dubplot的标题
      
    • 设置轴标签

      ax.set_xlabel() # 为对应subplot的x轴设置标签
      ax.set_ylabel()
      
    • 设置刻度

      设置刻度有两个方法,set_xticks和set_xticklabels,前者告诉maatplotlib将刻度放在对应范围的哪个位置,默认情况下这些刻度就是刻度标签;后者可以将任何其他类型的值作为标签

      ax.set_xticks([0,1,2,3,4]) # 将0,1,2,3,4作为x轴刻度标签
      ax.set_xticklabels(['one','two','three','four','five']) # 将one,two,three,four,five作为x轴刻度标签
      ax.set_yticks()
      ax.set_xticklabels()
      
    添加图例

    图例是标识图表元素的重要工具。

    • 方式一,在添加subplot时传入label参数
    fig = plt.figure()
    ax = fig.add_subplot(1,1,1)
    ax.plot(randn(1000).cumsum(), 'k--', label='one')
    ax.plot(randn(1000).cumsum(), 'k', label='two')
    ax.plot(randn(1000).cumsum(), 'k.', label='three')
    ax.legend(loc='best') # loc指定图例放置的位置,'best'参数标识系统将图例放置到最不碍事的地方
    

    在这里插入图片描述

    将图标保存到文件

    利用plt.savefig可以将当前图表保存到文件

    plt.savefig('figpath.png', dpi=400) # 将当前图表存储为png文件
    # dpi参数指定每英寸点数(分辨率)
    

    Pandas中的绘图函数

    从上面的例子中我们可以看出,matplotlib实际上是一个比较低级的画图工具,当我们绘制一张图标时,往往要指定他的多个属性,如图例,标签,标题等。而pandas中的绘图函数大大简化了这个过程。

    Series与DataFrame数据都可以通过调用plot函数来绘制图表

    • Series:

      s = Series(np.random.randn(10).cumsum(), index=np.arange(0,100,10))
      s.plot()
      

    在这里插入图片描述
    在这里插入图片描述

    • DataFrame:

      df = DataFrame(np.random.randn(10,4).cumsum(), columns=['A','B','C','D'],index=np.arange(0,100,10))
      # columns参数指定图例名称,index指定x轴标签
      # np.random.randn(10,4)共10行4列,产生四条曲线,每条曲线十个数据点
      df.plot()
      

    在这里插入图片描述
    在这里插入图片描述

    除了matplotlib外,还有许多优秀的画图工具,如chaco、mayavi等

    目前对于matplotlib的介绍就是这些,更多的知识可以研究一下pandas官方文档(pandas正在不断地更新中,会提供越来越多的函数),链接如下:

    http://pandas.pydata.org/pandas-docs/stable/user_guide/visualization.html

    展开全文
  • Matplotlib 安装

    2019-10-24 11:35:19
    章节Matplotlib 安装 Matplotlib 入门 Matplotlib 基本概念 Matplotlib 图形绘制 Matplotlib 多个图形 Matplotlib 其他类型图形 Matplotlib 柱状图 Matplotlib 饼图 Matplotlib 直方图 Matplotlib 散点图 ...

    章节


    为了统计分析,需要对数据进行可视化,Matplotlib是Python中用于数据绘图的软件包。

    Matplotlib最常用的模块是Pyplot。

    安装

    确保已经安装pip

    最佳实践是,一起安装NumPy, Scipy, matplotlib等系列包。

    执行以下命令安装:

    python -m pip install --user numpy scipy matplotlib ipython jupyter pandas sympy nose
    

    注意 :官方推荐使用用户安装,使用--user标志执行pip(警告:不要使用sudo pip,这可能会导致问题)。这将为当前用户安装包,不写入系统目录。

    验证安装

    要验证安装,可通过尝试导入模块scipy,如下所示。如果没有报错,则安装成功。

    [root@qikegu py3]# python
    Python 3.7.3 (default, Jun 17 2019, 22:07:41)
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import matplotlib
    >>>
    
    展开全文
  • matplotlib全图

    万次阅读 2018-11-28 16:22:27
    from matplotlib import pyplot as p, font_manager import matplotlib import random 设置字体 my_font=font_manager.FontProperties(fname=’/usr/share/fonts/truetype/droid/DroidSansFallbackFull.ttf’) fi...

    #横着的 条形图

    from matplotlib import pyplot as p, font_manager
    import matplotlib
    import random
    # 设置字体
    my_font=font_manager.FontProperties(fname='/usr/share/fonts/truetype/droid/DroidSansFallbackFull.ttf')
    fig =p.figure(figsize=(20,8),dpi=80)
    y=[]
    y1=[]
    for i in range(10):
        y.append(random.randrange(1,20))
    for i in range(10):
        y1.append(random.randrange(1,20))
    x=range(10)
    p.barh(y,x,label='自己',color='yellow',linestyle=':',height=0.3)
    # p.scatter(x,y1,label='他人',color="blue",linestyle="--")
    
    p.yticks(y[::1],["点{}".format(i) for i in range(10)],fontproperties=my_font,rotation=45)
    
    
    p.legend(loc="upper left",prop=my_font)
    
    
    
    
    p.show()
    

    绘制散点图

    from matplotlib import pyplot as p, font_manager
    import matplotlib
    import random
    # 设置字体
    my_font=font_manager.FontProperties(fname='/usr/share/fonts/truetype/droid/DroidSansFallbackFull.ttf')
    fig =p.figure(figsize=(20,8),dpi=80)
    y=[]
    y1=[]
    for i in range(10):
        y.append(random.randrange(1,20))
    for i in range(10):
        y1.append(random.randrange(1,20))
    x=range(10)
    p.scatter(x,y,label='自己',color='yellow',linestyle=':')
    # p.scatter(x,y1,label='他人',color="blue",linestyle="--")
    
    p.xticks(x[::2],["点{}".format(i) for i in range(10)],fontproperties=my_font,rotation=45)
    
    
    p.legend(loc="upper left",prop=my_font)
    
    
    
    
    p.show()
    

    折线图

    from matplotlib import pyplot as p, font_manager
    
    import matplotlib
    # 设置字体
    my_font=font_manager.FontProperties(fname='/usr/share/fonts/truetype/droid/DroidSansFallbackFull.ttf')
    fig =p.figure(figsize=(20,8),dpi=80)
    # font={"family":"MicroSoft YaHei","weight":"bold",'size':20}
    # matplotlib.rc('font',**font)
    # matplotlib.rc('font',family="MicroSoft YaHei",weight="bold")
    x=range(2,9,2)
    y=[2,3,6,4]
    y1=[1,3,8,3]
    
    p.plot(x,y,label='自己',color="orange",linestyle=":")
    p.plot(x,y1,label='同桌',color="cyan",linestyle="--")
    # 绘制表格
    p.grid(alpha=0.5)
    # 添加图例
    p.legend(prop=my_font,loc="upper left")
    
    p.title('第一张表',fontproperties=my_font)
    p.xlabel('时间',fontproperties=my_font)
    p.ylabel('温度',fontproperties=my_font)
    p.show()
    

    条形图

    from matplotlib import pyplot as p, font_manager
    import matplotlib
    import random
    # 设置字体
    my_font=font_manager.FontProperties(fname='/usr/share/fonts/truetype/droid/DroidSansFallbackFull.ttf')
    fig =p.figure(figsize=(20,8),dpi=80)
    y=[]
    y1=[]
    for i in range(10):
        y.append(random.randrange(1,20))
    for i in range(10):
        y1.append(random.randrange(1,20))
    x=range(10)
    p.bar(x,y,label='自己',color='yellow',linestyle=':',width=0.5)
    # p.scatter(x,y1,label='他人',color="blue",linestyle="--")
    
    p.xticks(x[::2],["点{}".format(i) for i in range(10)],fontproperties=my_font,rotation=45)
    
    
    p.legend(loc="upper left",prop=my_font)
    
    
    
    
    p.show()
    

    条形图

    from matplotlib import pyplot as p, font_manager
    import matplotlib
    import random
    # 设置字体
    my_font=font_manager.FontProperties(fname='/usr/share/fonts/truetype/droid/DroidSansFallbackFull.ttf')
    fig =p.figure(figsize=(20,8),dpi=80)
    y=[]
    y1=[]
    for i in range(10):
        y.append(random.randrange(1,20))
    for i in range(1000):
        y1.append(random.randrange(1,20))
    x=range(10)
    p.hist(y1,35,normed=True,label='自己',color='yellow',linestyle=':')
    # p.scatter(x,y1,label='他人',color="blue",linestyle="--")
    
    # p.xticks(x[::2],["点{}".format(i) for i in range(10)],fontproperties=my_font,rotation=45)
    
    
    p.legend(loc="upper left",prop=my_font)
    
    
    
    
    p.show()
    
    展开全文
  • matplotlib事件处理

    万次阅读 2020-03-10 14:54:12
    fig, ax = plt.subplots() ax.plot(np.random.rand(10)) def onclick(event): print('%s click: button=%d, x=%d, y=%d, xdata=%f, ydata=%f' % ('double' if event.dblclick else 'single', event.b...
    fig, ax = plt.subplots()
    ax.plot(np.random.rand(10))
    
    def onclick(event):
        print('%s click: button=%d, x=%d, y=%d, xdata=%f, ydata=%f' %
              ('double' if event.dblclick else 'single', event.button,
               event.x, event.y, event.xdata, event.ydata))
    
    cid = fig.canvas.mpl_connect('button_press_event', onclick)
    Copy to clipboard
    #该FigureCanvas方法 mpl_connect()返回一个连接ID,它只是一个整数。当您想断开回调时,只需调用:
    
    fig.canvas.mpl_disconnect(cid)
    

    fig.canvas.mpl_connect(‘button_press_event’, onclick)

    下面是这句话的选项

    ‘button_press_event’ MouseEvent 按下鼠标按钮
    ‘button_release_event’ MouseEvent 释放鼠标按钮
    ‘close_event’ CloseEvent 一个数字已关闭
    ‘draw_event’ DrawEvent 画布绘制(但在屏幕更新之前)
    ‘key_press_event’ KeyEvent 按下键
    ‘key_release_event’ KeyEvent 钥匙被释放
    ‘motion_notify_event’ MouseEvent 鼠标动作
    ‘pick_event’ PickEvent 画布中的一个对象被选中
    ‘resize_event’ ResizeEvent 图画布已调整大小
    ‘scroll_event’ MouseEvent 鼠标滚轮滚动
    ‘figure_enter_event’ LocationEvent 鼠标输入一个新的数字
    ‘figure_leave_event’ LocationEvent 鼠标离开图
    ‘axes_enter_event’ LocationEvent 鼠标输入新轴
    ‘axes_leave_event’ LocationEvent 鼠标离开轴

    展开全文
  • matplotlib显示中文钥匙

    万次阅读 2018-11-28 11:55:04
    from matplotlib import pyplot as p, font_manager import matplotlib my_font=font_manager.FontProperties(fname=’/usr/share/fonts/truetype/droid/DroidSansFallbackFull.ttf’) #/usr/share/fonts/truetype/...
  • Matplotlib安装教程

    千次阅读 2016-08-28 13:20:48
    Matplotlib安装教程 matplotlib的安装,很多人会遇到安装后报错,本教程基于32位win7系统下,python版本为2.7,完美解决matplotlib的安装。主要工具: Pyhton2.7.11 numpy-1.10.4-cp27-none-win32.whl或numpy-...
  • 原来matplotlib 散点图可以这样

    万次阅读 2020-03-04 16:26:57
    import matplotlib.pyplot as plt import numpy as np # 保证图片在浏览器内正常显示 import time start=time.time() # 10个点 N = 10 x = ['Sur', "Fea", "Dis", "Hap", "Sad", "Ang", "Nat", "XXX", "YYY", "ZZZ"]...
  • 设置输出的图片大小: figsize = 11,9 figure, ax = plt.subplots(figsize=figsize) ...画简单的折线图,同时标注线的形状、名称、粗细: ...A,=plt.plot(x1,y1,'-r',label='A',linewidth=5.0,ms=10) ...
  • python matplotlib 安装 和错误处理

    万次阅读 2014-09-19 11:03:39
    python matplotlib 安装 和错误处理 ,错误处理亲测十分有效。
  • matplotlib 安装教程

    千次阅读 2017-03-08 11:53:49
     从网上下载了matplotlib的软件以后放在python的安装路径下进行安装,会显示安装完成,但是在使用的过程中会出现不同的问题  以下是我在安装过程中遇到的问题和解决方法.  在python gui中输入 import ma
  • matplotlib的安装教程(windows)

    千次阅读 2019-02-02 19:50:00
    matplotlib的安装教程(window) 首先,命令窗口输入并执行python -m pip install -U pip setuptools进行升级。 其次,输入python -m pip install matplotlib进行自动的安装,系统会自动下载安装包 最后,启动...
  • Python-PyCharm安装numpy和matplotlib

    万次阅读 多人点赞 2015-10-23 13:08:11
    Python-PyCharm安装numpy和matplotlib 得益于原文作者(http://www.cnblogs.com/zhusleep/p/4733369.html)的方法,成功地在Pycharm下导入了numpy和matplotlib等pyton中常用的库。 方法的根本出发点在于,Pycharm...
  • 【数据展示】matplotlib设置画面大小

    万次阅读 2018-08-04 09:54:02
    代码实例 plt.figure(figsize=(6, 6.5)) 注意,这里的画面大小其实是 600 * 650的。...import matplotlib.pyplot as plt import numpy as np plt.figure(figsize=(6, 6.5)) for i in range(4): ax = plt.s...
  • python matplotlib 中文设置

    万次阅读 2019-12-15 13:04:12
    font_list=sorted([f.name for f in matplotlib.font_manager.fontManager.ttflist]) for i in font_list: print (i) 会有很多,然后找一个字体设置一下就好了 只要这一句就好了,字体自己可以修改 ...
  • 最简单的matplotlib安装教程

    万次阅读 多人点赞 2019-03-05 19:59:42
    在网上看见许多matplotlib的安装教程都是比较复杂,需要配置许多环境,对于电脑基础不好的人来说可是一件头疼的事情,今天我介绍一个简单的安装方法。 1.Win+R输入cmd进入到CMD窗口下,执行python -m pip install -...
  • Matplotlib 数据分析可视化

    万人学习 2019-08-30 15:43:53
    数据分析三剑客,NumPy、Pandas、Matplotlib,本课程是对Matplotlib的讲解,Matplotlib可以是分析的数据可视化,可以更直观的查看数据分析的结果,本课程独辟蹊径,不光教大家如何绘图,例如:饼图、柱状图、条形图...
  • matplotlib作图

    千次阅读 2017-04-17 18:25:15
     matplotlib 是Python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中。它的文档相当完备,并且Gallery页面 中
  • matplotlib绘图基础

    万次阅读 多人点赞 2014-07-13 20:02:53
    http://blog.csdn.net/pipisorry/article/details/37742423matplotlib介绍 matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图...
  • Python第三方库matplotlib(2D绘图库)入门与进阶

    万次阅读 多人点赞 2018-03-14 18:56:01
    Matplotlib 简介: Matplotlib是一个Python 2D绘图库,它可以在各种平台上以各种硬拷贝格式和交互式环境生成出具有出版品质的图形。 Matplotlib可用于Python脚本,Python和IPython shell,Jupyter笔记本,...
  • Python Matplotlib简易教程

    万次阅读 多人点赞 2019-04-07 23:30:02
    详情请见:Matplotlib python 数据可视化神器 简单演示import matplotlib.pyplot as plt import numpy as np# 从[-1,1]中等距去50个数作为x的取值 x = np.linspace(-1, 1, 50) print(x) y = 2*x + 1 # 第一个...
  • import matplotlib.pyplot as plt x_values=list(range(11)) #x轴的数字是0到10这11个整数 y_values=[x**2 for x in x_values] #y轴的数字是x轴数字的平方 plt.plot(x_values,y_values,c='green') #用plot函数绘制...
  • 如题,Eclipse PyDve 运行 matplotlib 报错 就一行简单的代码 import matplotlib.pyplot as plt: ![图片说明](https://img-ask.csdn.net/upload/201506/08/1433741894_588471.jpg) 根据报错,找到了出错的原因是...
  • python matplotlib 画图保存图片简单例子

    万次阅读 多人点赞 2018-03-21 15:10:04
    保存的时候遇到过保存空白图像的问题,是因为将plt.savefig('./test2.jpg')放到了plt.show()之后,...import matplotlib.pyplot as plt t = np.arange(0, 69, 1) plt.plot(t, t, 'r', t, t**2, 'b') label =...
  • Python绘图库Matplotlib.pyplot之网格线设置(plt.grid())

    万次阅读 多人点赞 2018-07-16 10:28:31
    首先导入需要用到的库,matplotlib.pyplot是必须的,Numpy是为了生成画布用的。 import numpy as np import matplotlib.pyplot as plt 生成网格 plt.gcf().set_facecolor(np.ones(3)* 240 /...
  • 自定义 matplotlib 原文:Customizing matplotlib 译者:飞龙 协议:CC BY-NC-SA 4.0 使用样式表自定义绘图style包为易于切换的绘图『样式』增加了支持,它们与matplotlibrc文件参数相同。有一些预定义样式由...
  • Py之matplotlibmatplotlib绘图自定义函数总结 目录 实现结果 实现结果 1、两个函数 Keys,Values=list_count(list_address) draw(Keys,Values,title,xlabel,ylabel) 2、twoD_in_different_...
  • matplotlib xticks用法

    万次阅读 多人点赞 2019-08-08 16:19:31
    这个坐标轴变名用法,我真服气了,我在网上看大家写的教程,看的头晕,也没看懂他们写xtick到底怎么用的,...import matplotlib.pyplot as plt x = [1, 2, 3, 4] y = [1, 4, 9, 6] labels = ['Frogs', 'Hogs', ...
  • python用matplotlib画K线

    2017-11-18 14:15:41
    import matplotlib.pyplot as plt import matplotlib.finance as mpf with open('SH#600004.txt') as obj: text=obj.readlines() baseinfo=text[0] dayinfo=text[2:-1] date_list =[dayinfo[i].split(','...
  • matplotlib绘图实例:pyplot、pylab模块及作图参数

    万次阅读 多人点赞 2014-10-12 00:47:09
    Matplotlib.pyplot绘图实例 {使用pyplot模块} matplotlib绘制直线、条形/矩形区域 import numpy as np import matplotlib.pyplot as plt t = np.arange(-1, 2, .01) s = ...

空空如也

1 2 3 4 5 ... 20
收藏数 79,436
精华内容 31,774
关键字:

matplotlib