代码之家  ›  专栏  ›  技术社区  ›  pleasedontbelong

在matplotlib中,图addo(111)中的参数是什么意思?

  •  392
  • pleasedontbelong  · 技术社区  · 14 年前

    有时我会遇到这样的代码:

    导入matplotlib.pyplot as plt X=[1、2、3、4、5] Y=[1、4、9、16、25] 图=plt.图()) 图添加子批次(111) plt.散射(x,y) 显示() < /代码>

    生产:

    我一直在疯狂地阅读文档,但找不到有关 111的解释。有时我会看到一个 212

    fig.add_subplot()的参数是什么?

    产生:

    Example plot produced by the included code

    我一直在疯狂地阅读文档,但我找不到一个解释 111 . 有时我看到 212 .

    你的论点是什么? fig.add_subplot() 意思是?

    5 回复  |  直到 6 年前
        1
  •  388
  •   Constantin    14 年前

    这些是编码为单个整数的子块网格参数。例如,“111”表示“1X1网格,第一子批次”,“234”表示“2X3网格,第四子批次”。

    替代形式 add_subplot(111) add_subplot(1, 1, 1) .

        2
  •  443
  •   ImportanceOfBeingErnest    6 年前

    我想这最好用下面的图片来解释:

    要初始化上面的内容,可以键入:

    导入matplotlib.pyplot as plt 图=plt.图()) 图添加子批次(221)左上方 图添加子批次(222)右上角 图添加子批次(223)左下方 图添加子批次(224)右下角 显示() < /代码>

    要初始化上面的内容,可以键入:

    import matplotlib.pyplot as plt
    fig = plt.figure()
    fig.add_subplot(221)   #top left
    fig.add_subplot(222)   #top right
    fig.add_subplot(223)   #bottom left
    fig.add_subplot(224)   #bottom right 
    plt.show()
    
        3
  •  34
  •   MackM    10 年前

    康斯坦丁的答案是现场的,但对于更多的背景,这种行为是从matlab继承的。

    Matlab的行为在 Figure Setup - Displaying Multiple Plots per Figure matlab文档的一节。

    子块(m,n,i)将图形窗口分解为一个小的m乘n矩阵 子批次并选择当前绘图的ITHE子批次。情节 沿着图形窗口的顶行编号,然后是第二行 排,等等。

        4
  •  10
  •   yoonghm    7 年前

    我的解决方案是

    fig=plt.figure())
    图添加子批次(1,2,1)左上和左下
    图添加子批次(2,2,2)右上角
    图添加子批次(2,2,4)右下角
    显示()
    < /代码> 
    
    

    2x2 grid with 1 and 3 merge

        5
  •  2
  •   Chabo    6 年前

    fig.add_subplot(ROW,COLUMN,POSITION)

    • 行=行数
    • 列=列数
    • 位置=正在绘制的图形的位置

    实例

    `fig.add_subplot(111)` #There is only one subplot or graph  
    `fig.add_subplot(211)`  *and*  `fig.add_subplot(212)` 
    

    共有2行,1列,因此可以绘制2个子图。其位置为1。共有2行,1列,因此可绘制2个子图。其位置为2