• 技术文章 >Python技术 >Python基础教程

    python中如何用subplot画多个子图?

    2020-11-13 11:06:07原创6460
    开始讲今天的内容之前,先说一点题外话。上学的时候地理课上会画一些等高图、小地图之类的,那时候小编就对地理产生了浓厚的兴趣,不过最后因为种种原因还是没有选择继续学习地理方面的知识了。接触了python之后,发现可以用来画地理中的一些图片,就真是振奋人心的好消息。在我们今天画子图的内容中,也会提到卫星弧段图。感兴趣的小伙伴我们一起来看看吧。

    Python可通过subplot函数画多个子图。调用形式如:subplot(nrows,ncols,index),图表的整个绘图区域被分成nrows行和ncols列,按照从左到右,从上到下的顺序对每个子区域进行编号,左上的子区域编号为1。index参数指定创建的Axes对象所在的区域。

    matplotlib官网上的一个2*2多子图例子如下所示:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    import matplotlib.pyplot as plt

    import numpy as np

      

    # Some example data to display

    x = np.linspace(0, 2 * np.pi, 400)

    y = np.sin(x ** 2)

      

    fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2)

    fig.suptitle('Sharing x per column, y per row')

    ax1.plot(x, y)

    ax2.plot(x, y**2, 'tab:orange')

    ax3.plot(x, -y, 'tab:green')

    ax4.plot(x, -y**2, 'tab:red')

      

    for ax in fig.get_axes():

    ax.label_outer()


    比如要将卫星弧段图和SNR图两个图按照上下顺序放置于同一张图时,可采用如下方式:

    1

    2

    3

    4

    5

    6

    7

    8

    import matplotlib.pyplot as plt

      

    plt.figure()

    plt.subplot(211)

    plt.plot(t1, Satarc)

      

    plt.subplot(212)

    plt.plot(t2, SNR)


    以上就是python中用subplot画多个子图的方法,同时我们也可以把把它们画在一个图中。更多有趣用python画地理图片的小方法,小伙伴们也可以自行探索。希望今天的内容能对大家有所帮助~

    专题推荐:python画图
    上一篇:如何用python在地图上画比例? 下一篇:如何用python画地图上的标注线?

    相关文章推荐

    • python画图如何显示中文标题?• python画图怎么添加汉字的坐标轴• Python画图用到哪些库?• python画图如何设置横坐标?

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网