精华内容
下载资源
问答
  • 使用Python和Matplotlib,我试图生成一个由两个子图形组成的图形,每个子图形都包含一组带有公共颜色条的绘图。我几乎一切正常。我唯一搞不懂的是如何使顶部和底部子批次具有相同的宽度-即4x2网格+颜色条应具有与2x1...

    使用Python和Matplotlib,我试图生成一个由两个子图形组成的图形,每个子图形都包含一组带有公共颜色条的绘图。我几乎一切正常。我唯一搞不懂的是如何使顶部和底部子批次具有相同的宽度-即4x2网格+颜色条应具有与2x1网格+颜色条相同的宽度。左下角的图像与其他情节的形状不同,这是有意为之的。在

    我的密码是:import matplotlib.pyplot as plt

    from mpl_toolkits.axes_grid1 import AxesGrid, ImageGrid

    from numpy.random import rand

    fig = plt.figure(1)

    grid1 = ImageGrid(fig, 211,

    nrows_ncols = (2, 4),

    axes_pad = 0.07,

    share_all=True,

    label_mode = "L",

    cbar_location = "right",

    cbar_mode="single",

    cbar_size="7%",

    cbar_pad="7%",

    aspect = True

    )

    for n in range(8):

    im = grid1[n].imshow(rand(10,10),interpolation="nearest")

    grid1.axes_all

    cb1 = grid1.cbar_axes[0].colorbar(im)

    cb1.set_label_text('subfig 1')

    grid2 = ImageGrid(fig, 212,

    nrows_ncols = (1, 2),

    axes_pad = 0.1,

    label_mode = "L",

    share_all = False,

    cbar_location="right",

    cbar_mode="single",

    cbar_size="7%",

    cbar_pad="7%",

    aspect = True

    )

    im = grid2[0].imshow(rand(10,15),interpolation="nearest")

    im = grid2[1].imshow(rand(10,10),interpolation="nearest")

    cb2 = grid2.cbar_axes[0].colorbar(im)

    cb2.set_label_text('subfig 2')

    plt.figtext(0.05,0.85,'(a)',size=20)

    plt.figtext(0.05,0.45,'(b)',size=20)

    plt.show()

    结果如下:

    实际的图是图像,所以保持每个图的正确纵横比很重要。在

    我想,每一步我都不知道该怎么做。在

    我通读了文档并查看了examplesmatplotlib.org网站. 有一些例子展示了如何调整单个grid[n]的大小,但是我找不到任何例子来展示如何调整grid。有人有什么建议吗?在

    展开全文
  • 大家都想不到吧,使用python居然还可以绘制画图,而最常见的就是python matplotlib,因为常见,所以常用,要怎么完美的利用这个呢?一起来看下吧~首先建立一个项目文件夹,然后新建一个Python 3的项目,我们就可以...

    大家都想不到吧,使用python居然还可以绘制画图,而最常见的就是python matplotlib,因为常见,所以常用,要怎么完美的利用这个呢?一起来看下吧~

    首先建立一个项目文件夹,然后新建一个Python 3的项目,我们就可以愉快的编程了。

    案例1:绘制一条线import matplotlib.pyplot as plt #导入pyplot

    import numpy as np #导入numpy

    # np.linspace为numpy的等差数列函数,形成一个0到100之间,共50个元素的函数

    x = np.linspace(0,100,50)

    y = 2*x   1 #赋值运算

    #最重要的一步,plot用于绘制线条或标记的轴,可以指定线性,颜色等

    plt.plot(x,y) #默认直接绘制

    plt.show()

    案例2:绘制一条特殊的线import matplotlib.pyplot as plt

    import numpy as np

    x = np.linspace(0,100,20)

    #print (x)

    y = 2*x   1

    #与案例1中不同的是增加很多参数,如color(颜色), linewidth(线宽), linestyle(线性), marker(标记)

    plt.plot(x,y,color='red',linewidth=1.0,linestyle='-',marker='o')

    plt.show()

    案例3:绘制饼图import matplotlib.pyplot as plt

    labels = 'Frogs', 'Hogs', 'Dogs', 'Logs' #定义标签

    sizes = [15, 30, 45, 10] #定义饼图的大小

    explode = (0, 0.1, 0, 0) #定义切片

    fig1, ax1 = plt.subplots() #导入饼图

    #定义饼图的样式,此示例将 startangle设置为90 ,以便将所有对象逆时针旋转90度,定义了数

    #据显示格式以小数显示,带阴影

    ax1.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%',

    shadow=True, startangle=90)

    ax1.axis('equal') # 等纵横比可确保将饼图绘制为圆。.

    plt.show()

    8899ce5c9326cbfd7d54f113dd701355.png

    案例4:绘制3D图import matplotlib.pyplot as plt

    import numpy as np

    from mpl_toolkits.mplot3d import Axes3D #导入3D图库

    fig = plt.figure(figsize=(12, 8)) #指定figure的大小

    ax = Axes3D(fig)

    # 生成X,Y

    X = np.arange(-4, 4, 0.25)

    Y = np.arange(-4, 4, 0.25)

    X,Y = np.meshgrid(X, Y)

    R = np.sqrt(X**2   Y**2)

    # height value

    Z = np.sin(R)

    # 绘图

    # rstride(row)和cstride(column)表示的是行列的跨度

    ax.plot_surface(X, Y, Z,

    rstride=1, # 行的跨度

    cstride=1, # 列的跨度

    cmap=plt.get_cmap('rainbow') # 颜色映射样式设置

    )

    # offset 表示距离zdir的轴距离

    ax.contourf(X, Y, Z, zdir='z', offest=-2, cmap='rainbow')

    ax.set_zlim(-2, 2)

    plt.show()

    dd3927e2773893a4137bfc5a82ae57e9.png

    好了,以上就是python matplotlib绘图常见的绘图内容了,如需了解更多python实用知识,点击进入JQ教程网Python大全。

    展开全文
  • 第二层为辅助显示层,主要包括axis,spines, grid, legend, title等 第三层为图像层, 就是通过plot、scatter等方法绘制的图像 容器层 Canvas 是位于最底层的系统层, 在绘图过程中就是充当画板的角色,(放置画布...

    安装

    pip install matplotlib 
    

    Matplotlib 图像结构

    • 一般, Matplotlib图像可以分成三层结构
    • 第一层是底层的容器层, 主要包括Canvas, Figure, Axes
    • 第二层为辅助显示层,主要包括axis,spines, grid, legend, title等
    • 第三层为图像层, 就是通过plotscatter等方法绘制的图像
      在这里插入图片描述

    容器层

    • Canvas 是位于最底层的系统层, 在绘图过程中就是充当画板的角色,(放置画布(Figure)的工具)
    • Figure 是Canvas(画板)上方的第一层,在绘图的过程中充当画布的角色, 可以设置画布的大小和分辨率
    • Axes 是Canvas层上方的第二层, 在绘图的过程中相当于画布上的绘图区的角色, (一个Axes就是一个绘图区), 一个Figure对象可以包含多个Axes对象,每个Axes都是一个独立的坐标系,绘图过程中的所有图像都是基于坐标系绘制的
      在这里插入图片描述

    辅助显示层

    • 辅助显示层是Axes层内的除了根据绘制出的图像以外的内容

    • 主要包括Axes外观(facecolor)、边框线(spines)、坐标轴(axis)、坐标轴名称(axis label)、坐标轴刻度标签(tick label)、网格线(grid)、图例(legend)、标题(title)等内容

    • 该层的设置可使图像显示更加直观更加容易被用户理解,但又不会对图像产生实质的影响
      在这里插入图片描述

    图像层

    • 图像层值 Axes内通过 plot、scatter、bar、histogram、pie等函数根据数据绘制出的图像

    在这里插入图片描述

    Canvas(画板)位于最底层,用户一般接触不到
    Figure(画布)建立在Canvas之上
    Axes(绘图区)建立在Figure之上
    坐标轴(axis)、图例(legend)等辅助显示层以及图像层都是建立在Axes之上

    绘制图像-pyplot

    先导入

    from matplotlib import pyplot as plt
    
    #在使用jupyter notebook时调用matplotlib.pyplot的绘图函数plot()进行绘图的时候,或者生成一个figure画布的时候,需要加上%matplotlib
    %matplotlib inline
    
    x = range(1,8) 
    y = [17, 17, 18, 15, 11, 11, 13]
    plt.plot(x,y) 
    plt.show()
    
    

    在这里插入图片描述

    • 绘制图形需要确定 x , y 的值,(x和y的个数要相同)
    • plt.plot(x, y) : 根据传进去的x, y 进行绘制折线图
    • plt.show() : 显示绘制的图形
    • X轴和Y轴可以默认生成,也可以自定义
    x = range(1,8) 
    y = [17, 17, 18, 15, 11, 11, 13]
    plt.plot(x, y, color='red',alpha=0.5,linestyle='-',linewidth=3,marker='o') 
    plt.show()
    

    在这里插入图片描述

    • color='red' :设置线的颜色
    • alpha=0.5 :设置线的透明度,让其拥有似漏非漏的感觉
    • inestyle='—' :设置线的样式,- 实线(solid)、-- 短线(dashed)、-. 短点相间线(dashdot)、:虚点线(dotted)
    • linewidth=3 :设置线的宽度
    • marker='o' :设置折点的样式,默认是什么都没有

    折点样式
    在这里插入图片描述

    展开全文
  • grid函数--Matplotlib

    2020-09-26 17:08:29
    grid函数使用Matplotlib **函数功能:**Configure the grid lines   配置网格线 函数语法: grid(b=None, which=‘major’, axis=‘both’, **kwargs) 函数参数: b: bool or None, optional...

    grid函数使用–Matplotlib
    函数功能: Configure the grid lines
                         配置网格线
    函数语法: grid(b=None, which=‘major’, axis=‘both’, **kwargs)
    函数参数:
    b: bool or None, optional
    可选参数,布尔型
    Whether to show the grid lines. If any kwargs are supplied, it is assumed you want the grid on and b will be set to True.
    是否显示网格线,如果提供了参数,则认为需要显示网格,b=True
    If b is None and there are no kwargs, this toggles the visibility of the lines.
    若b为空,未提供参数,则网格线的可见性转换(不显示)

    which: {‘major’, ‘minor’, ‘both’}, optional。 The grid lines to apply the changes on.
                         可选参数,取值为 ‘major’, ‘minor’, ‘both’,需要修改的网格线

    axis:{‘both’, ‘x’, ‘y’}, optional The axis to apply the changes on.
                         可选参数,需要修改的坐标轴
    **kwargs:Define the line properties of the grid, e.g.:grid(color=‘r’, linestyle=’-’, linewidth=2)
                         定义网格线的属性,如:颜色,风格、粗细等

    对此存在尚不完全理解,有大佬请指教!

    **不解之处:**当参数为空,依然显示网格线

    在这里插入图片描述
    参数为空的设置等于 b=True
    在这里插入图片描述
    当b=False 时不显示网格线
    在这里插入图片描述
    当which= ‘major’,网格线未发生变化

    在这里插入图片描述
    当which= ‘minor’,网格线消失
    在这里插入图片描述
    当which= ‘both’,网格线存在
    在这里插入图片描述
    当aixs = ‘x’ ,横向网格线发生改变消失
    在这里插入图片描述
    当aixs = ‘y’ ,纵向网格线发生改变消失
    在这里插入图片描述
    设置网格线的颜色、粗细、风格等。
    在这里插入图片描述
    不解之处总结:
    1.当参数为空时,网格线会显示
    2.which参数:什么样的网格线属于major,什么属于minor
    若有幸被大神看到,望不吝赐教。

    展开全文
  • 如果您曾经在 Python 中进行过数据可视化,那么很可能您使用Matplotlib 库。 这个库包含了许多绘图的功能。但是一些概念上简单的可视化需要大量的代码才能完成。 而在这个时代,人们希望能够与图表进行交互——这...
  • 如果您曾经在 Python 中进行过数据可视化,那么很可能您使用Matplotlib 库。 这个库包含了许多绘图的功能。但是一些概念上简单的可视化需要大量的代码才能完成。 而在这个时代,人们希望能够与图表进行交互——这...
  • Matplotlib:plot的使用

    2019-05-08 10:16:53
    import matplotlib.pyplot as plt fig = plt.figure() fig.set(alpha=0.2) # 设定图表颜色alpha参数 plt.subplot2grid((2,3),(0,0)) # 在一张大图里分列几个小图,位置是(0,0) data_train.Survived.value_counts...
  • tf好朋友之matplotlib使用——subplot分格显示分格显示的方法利用plt.subplot2grid进行分格显示利用gridspec.GridSpec进行分格显示应用示例 在学习matlab的时候,图像是可以分格显示的,在python中要如何实现呢! ...
  • 加网格看起来好看些 plt.grid(linestyle='-.') 设置曲线宽,颜色,上面的点的形状 plot(x, y, color='green', marker='o', linestyle='dashed', linewidth=2, markersize=12)
  • 关联知识 Matplotlib Python axes_grid1工具包旨在提供一组帮助器类,以在网格中...在此,我们将学习如何使用Matplotlib twinx主方法以及axisartist和axes_grid1工具包在多个y轴上绘制多个比例尺。 导入所需库: impo
  • 使用matplotlib绘图时通常会绘制子图用于清晰展示,我们通过subplot来绘制子图位置即可。 subplot通常用来定位的参数有三个(行数,列数,子图索引),三个参数用‘,’隔开,也可简化不写“,” 实例代码例如: import ...
  • Grid-strategy是一个python软件包,使用户可以使用不同的网格策略来组织matplotlib图。 抽象的 该软件包添加了一种机制,该机制可根据要绘制的轴数创建子图网格,并提供一种应如何排列的策略,默认情况下还包含一些...
  • 导入Matplotlib中的基本图表包括的元素1.x轴和y轴:水平和垂直的轴线2.x轴和y轴刻度:刻度标示坐标轴的分隔,包括最小刻度和最大...可以在一个plot函数中传入多对X,Y值,在一个图中绘制多个曲线网格线使用plt.grid(...
  • plt.grid(b=True, ls=':', color='#606060') # 设置网格线:b控制网格线,ls设置网格线的样式 plt.tick_params(labelsize=20) # 轴数值大小:labelsize设置数值展示大小 plt.ylabel(y_field, fontsize=20, fontdict=...
  • matplotlib.pyplot笔记

    2021-01-20 02:57:16
    matplotlib.pyplot Notebook 由于使用emacs-org进行编辑,为方便暂且使用英文 Table of Contents basic point basic elements line graph axis: line markers method 1 method 2 method 3 legend, label and title ...
  • 文章目录1.函数plot()——展现变量...函数grid()——绘制刻度线的网格线6.函数axhline()——绘制平行于X轴的水平参考线7.函数axvspan()——绘制垂直于X轴的参考区域8.函数annotate()——添加图形内容细节的指向型注...
  • Python中的Matplotlib

    2021-02-24 08:09:25
    Matplotlib由大量可视化库组成matplotlib.pyplot是绘制各类可视化图形的命令子库,相当于快捷方式。在这里插入图片描述对于plot来说,如果只有一个值,则会被当作y轴处理,x轴是其索引。使用savefig方法存为PNG文件...
  • matplotlib 排版布局

    2020-07-25 18:01:54
    网格布局目录 subplots() 最常见的网格排版方式,一次性定好所有Axes ...类似于subplot(),但使用基于0的索引并允许子图占据多个单元格。 subplots import matplotlib.pyplot as plt import m
  • matplotlib 折线图

    2020-01-05 13:37:40
    在python的matplotlib库中分别可用bar、barh、plot函数来构建它们,再使用xticks与yticks(设置坐标轴刻度)、 xlabel与ylabel(设置坐标轴标签)、title(标题)、legend(图例)、xlim与ylim(设置坐标轴数据范围...
  • 使用import导入matplotlib.pyplot模块, 并简写成plt. 使用plt.figure()创建一个图像窗口 import matplotlib.pyplot as plt plt.figure() ax1 = plt.subplot2grid((3, 3), (0, 0), colspan=3) # stands for ...
  • Matplotlib——多图合并

    2021-01-21 16:44:58
    文章目录1....使用import导入matplotlib.pyplot模块, 并简写成plt. 使用plt.figure创建一个图像窗口. 使用plt.subplot来创建小图. plt.subplot(2,2,1)表示将整个图像窗口分为2行2列, 当前位置为1. 使用plt
  • I'm plotting a surface using matplotlib 1.1.0.The plot Z axis is masked like so:Zm = ma.masked_where((abs(z_grid) < 1.09) & (abs(z_grid) > 0.91), (z_surface))surf = ax.plot_surface(X, Y,Zm, ...
  • I need to create a visualization in Python just like colah's did on his ... However, I could not find any distortion to grid on matplotlib to perform exactly like he did here. Pls, help me if you ca...
  • 2.2、hold属性hold属性默认为True,允许在一幅图中绘制多个曲线;...2.3、网格线grid方法使用grid方法为图添加网格线设置grid参数(参数与plot函数相同).lw代表linewidth,线的粗细.alpha表示线的明暗程度2.4、a...
  • 去除图标的边框可以如下...import matplotlib.pyplot as plt if __name__ == "__main__": caida = [1]*10 cernet = [2]*10 tsinghua = [3]*10 hgc = [4]*10 plt.figure() plt.grid() plt.ylim([0, 1]) plt.xt
  • 例如.import matplotlib.pyplot as pltimport numpy as np# Generate some data...# Note that all of these are _2D_ arrays, so that we can use meshgrid# You'll need to "grid" your data ...
  • Matplotlib为此提出了子图(subplot)的概念:在较大的图形中同时放置一组较小的坐标轴。这些子图可能是画中画(inset)、网格图(gridof plots),或者是其他更复杂的布局形式。plt.axes创建子图创建坐标轴最基本的方法...
  • Python基础教程记录 - 使用matplotlib实现雷达图和柱状图。注:主要是设置add_subplot(133),分别代表一幅图中子图像行数,列数,和位置函数和参数说明:'bo-':分别代表标记颜色,标记形状,和线型,,‘bo’代表...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 141
精华内容 56
关键字:

matplotlib使用grid