欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

matplotlibsubplot子圖怎么用

小編給大家分享一下 matplotlib subplot子圖怎么用,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

站在用戶的角度思考問題,與客戶深入溝通,找到古縣網站設計與古縣網站推廣的解決方案,憑借多年的經驗,讓設計與互聯(lián)網技術結合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:做網站、成都網站建設、企業(yè)官網、英文網站、手機端網站、網站推廣、域名申請、網絡空間、企業(yè)郵箱。業(yè)務覆蓋古縣地區(qū)。

總括

MATLAB和pyplot有當前的圖形(figure)和當前的軸(axes)的概念,所有的作圖命令都是對當前的對象作用??梢酝ㄟ^gca()獲得當前的axes(軸),通過gcf()獲得當前的圖形(figure)

import numpy as npimport matplotlib.pyplot as pltdef f(t):return np.exp(-t) * np.cos(2*np.pi*t)
t1 = np.arange(0.0, 5.0, 0.1)
t2 = np.arange(0.0, 5.0, 0.02)
plt.figure(1)
plt.subplot(211)
plt.plot(t1, f(t1), 'bo', t2, f(t2), 'k')
plt.subplot(212)
plt.plot(t2, np.cos(2*np.pi*t2), 'r--')
plt.show()

matplotlib subplot子圖怎么用
如果不指定figure()的軸,figure(1)命令默認會被建立,同樣的如果你不指定subplot(numrows, numcols, fignum)的軸,subplot(111)也會自動建立。

import matplotlib.pyplot as plt
plt.figure(1) # 創(chuàng)建第一個畫板(figure)plt.subplot(211) # 第一個畫板的第一個子圖plt.plot([1, 2, 3])
plt.subplot(212) # 第二個畫板的第二個子圖plt.plot([4, 5, 6])
plt.figure(2) #創(chuàng)建第二個畫板plt.plot([4, 5, 6]) # 默認子圖命令是subplot(111)plt.figure(1) # 調取畫板1; subplot(212)仍然被調用中plt.subplot(211) #調用subplot(211)plt.title('Easy as 1, 2, 3') # 做出211的標題

matplotlib subplot子圖怎么用
subplot()是將整個figure均等分割,而axes()則可以在figure上畫圖。

import matplotlib.pyplot as plt
import numpy as np# 創(chuàng)建數(shù)據(jù)dt = 0.001t = np.arange(0.0, 10.0, dt)
r = np.exp(-t[:1000]/0.05) # impulse responsex = np.random.randn(len(t))
s = np.convolve(x, r)[:len(x)]*dt # colored noise# 默認主軸圖axes是subplot(111)plt.plot(t, s)
plt.axis([0, 1, 1.1*np.amin(s), 2*np.amax(s)])
plt.xlabel('time (s)')
plt.ylabel('current (nA)')
plt.title('Gaussian colored noise')#內嵌圖a = plt.axes([.65, .6, .2, .2], facecolor='y')
n, bins, patches = plt.hist(s, 400, normed=1)
plt.title('Probability')
plt.xticks([])
plt.yticks([])#另外一個內嵌圖a = plt.axes([0.2, 0.6, .2, .2], facecolor='y')
plt.plot(t[:len(r)], r)
plt.title('Impulse response')
plt.xlim(0, 0.2)
plt.xticks([])
plt.yticks([])
plt.show()

matplotlib subplot子圖怎么用

你可以通過clf()清空當前的圖板(figure),通過cla()來清理當前的軸(axes)。你需要特別注意的是記得使用close()關閉當前figure畫板

通過GridSpec來定制Subplot的坐標

GridSpec指定子圖所放置的幾何網格。
SubplotSpec在GridSpec中指定子圖(subplot)的位置。
subplot2grid類似于“pyplot.subplot”,但是它從0開始索引

ax = plt.subplot2grid((2,2),(0, 0))ax = plt.subplot(2,2,1)

以上兩行的子圖(subplot)命令是相同的。subplot2grid使用的命令類似于HTML語言。

ax1 = plt.subplot2grid((3,3), (0,0), colspan=3)ax2 = plt.subplot2grid((3,3), (1,0), colspan=2)ax3 = plt.subplot2grid((3,3), (1, 2), rowspan=2)ax4 = plt.subplot2grid((3,3), (2, 0))ax5 = plt.subplot2grid((3,3), (2, 1))

matplotlib subplot子圖怎么用

使用GridSpec 和 SubplotSpec

ax = plt.subplot2grid((2,2),(0, 0))

相當于

import matplotlib.gridspec as gridspec
gs = gridspec.GridSpec(2, 2)
ax = plt.subplot(gs[0, 0])

一個gridspec實例提供給了類似數(shù)組的索引來返回SubplotSpec實例,所以我們可以使用切片(slice)來合并單元格。

gs = gridspec.GridSpec(3, 3)ax1 = plt.subplot(gs[0, :])ax2 = plt.subplot(gs[1,:-1])ax3 = plt.subplot(gs[1:, -1])ax4 = plt.subplot(gs[-1,0])ax5 = plt.subplot(gs[-1,-2])

matplotlib subplot子圖怎么用

調整GridSpec圖層

當GridSpec被使用后,你可以調整子圖(subplot)的參數(shù)。這個類似于subplot_adjust,但是它只作用于GridSpec實例。

gs1 = gridspec.GridSpec(3, 3)
gs1.update(left=0.05, right=0.48, wspace=0.05)
ax1 = plt.subplot(gs1[:-1, :])
ax2 = plt.subplot(gs1[-1, :-1])
ax3 = plt.subplot(gs1[-1, -1])
gs2 = gridspec.GridSpec(3, 3)
gs2.update(left=0.55, right=0.98, hspace=0.05)
ax4 = plt.subplot(gs2[:, :-1])
ax5 = plt.subplot(gs2[:-1, -1])
ax6 = plt.subplot(gs2[-1, -1])

matplotlib subplot子圖怎么用

在subplotSpec中嵌套GridSpec

gs0 = gridspec.GridSpec(1, 2)gs00 = gridspec.GridSpecFromSubplotSpec(3, 3, subplot_spec=gs0[0])gs01 = gridspec.GridSpecFromSubplotSpec(3, 3, subplot_spec=gs0[1])

matplotlib subplot子圖怎么用
下圖是一個3*3方格,嵌套在4*4方格中的例子
matplotlib subplot子圖怎么用
調整GridSpec的尺寸
默認的,GridSpec會創(chuàng)建相同尺寸的單元格。你可以調整相關的行與列的高度和寬度。注意,絕對值是不起作用的,相對值才起作用。

gs = gridspec.GridSpec(2, 2,
                        width_ratios=[1,2],
                        height_ratios=[4,1]
                        )
ax1 = plt.subplot(gs[0])
ax2 = plt.subplot(gs[1])
ax3 = plt.subplot(gs[2])
ax4 = plt.subplot(gs[3])

matplotlib subplot子圖怎么用

調整圖層

tigh_layout自動調整子圖(subplot)參數(shù)來適應畫板(figure)的區(qū)域。它只會檢查刻度標簽(ticklabel),坐標軸標簽(axis label),標題(title)。
軸(axes)包括子圖(subplot)被畫板(figure)的坐標指定。所以一些標簽會超越畫板(figure)的范圍。

plt.rcParams['savefig.facecolor'] = "0.8"def example_plot(ax, fontsize=12):ax.plot([1, 2])
    ax.locator_params(nbins=3)
    ax.set_xlabel('x-label', fontsize=fontsize)
    ax.set_ylabel('y-label', fontsize=fontsize)
    ax.set_title('Title', fontsize=fontsize)
plt.close('all')
fig, ax = plt.subplots()
example_plot(ax, fontsize=24)

matplotlib subplot子圖怎么用
對于子圖(subplot)可以通過調整subplot參數(shù)解決這個問題。Matplotlib v1.1 引進了一個新的命令tight_layout()自動的解決這個問題

plt.tight_layout()

matplotlib subplot子圖怎么用
很多子圖的情況

plt.close('all')
fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(nrows=2, ncols=2)example_plot(ax1) example_plot(ax2) example_plot(ax3) example_plot(ax4)

matplotlib subplot子圖怎么用

plt.tight_layout()

matplotlib subplot子圖怎么用
tight_layout()含有pad,w_pad和h_pad

plt.tight_layout(pad=0.4, w_pad=0.5, h_pad=1.0)

matplotlib subplot子圖怎么用

在GridSpec中使用tight_layout()

GridSpec擁有它自己的tight_layout()方法

plt.close('all')fig = plt.figure()
import matplotlib.gridspec as gridspecgs1 = gridspec.GridSpec(2, 1)ax1 = fig.add_subplot(gs1[0])ax2 = fig.add_subplot(gs1[1])
example_plot(ax1)
example_plot(ax2)
gs1.tight_layout(fig)

matplotlib subplot子圖怎么用
你可以指定一個可選擇的方形(rect)參數(shù)來指定子圖(subplot)到畫板(figure)的距離
matplotlib subplot子圖怎么用
這個還可以應用到復合的gridspecs中

gs2 = gridspec.GridSpec(3, 1)
for ss in gs2:
ax = fig.add_subplot(ss)
example_plot(ax)
ax.set_title("")
ax.set_xlabel("")
ax.set_xlabel("x-label", fontsize=12)
gs2.tight_layout(fig, rect=[0.5, 0, 1, 1], h_pad=0.5)

matplotlib subplot子圖怎么用

在AxesGrid1中使用tight_layout()

plt.close('all')
fig = plt.figure()from mpl_toolkits.axes_grid1 import Grid
grid = Grid(fig, rect=111, nrows_ncols=(2,2),
axes_pad=0.25, label_mode='L',
)for ax in grid:
example_plot(ax)
ax.title.set_visible(False)
plt.tight_layout()

matplotlib subplot子圖怎么用

在colorbar中使用tight_layout()

colorbar是Axes的實例,而不是Subplot的實例,所以tight_layout不會起作用,在matplotlib v1.1中,你把colorbar作為一個subplot來使用gridspec。

plt.close('all')
arr = np.arange(100).reshape((10,10))
fig = plt.figure(figsize=(4, 4))
im = plt.imshow(arr, interpolation="none")
plt.colorbar(im, use_gridspec=True)
plt.tight_layout()

matplotlib subplot子圖怎么用
另外一個方法是,使用AxesGrid1工具箱為colorbar創(chuàng)建一個軸Axes

plt.close('all')
arr = np.arange(100).reshape((10,10))
fig = plt.figure(figsize=(4, 4))
im = plt.imshow(arr, interpolation="none")from mpl_toolkits.axes_grid1 import make_axes_locatable
divider = make_axes_locatable(plt.gca())
cax = divider.append_axes("right", "5%", pad="3%")
plt.colorbar(im, cax=cax)
plt.tight_layout()

matplotlib subplot子圖怎么用

看完了這篇文章,相信你對“ matplotlib subplot子圖怎么用”有了一定的了解,如果想了解更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

分享文章:matplotlibsubplot子圖怎么用
URL網址:http://aaarwkj.com/article6/pjdpog.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供品牌網站設計網站制作、動態(tài)網站面包屑導航、虛擬主機、企業(yè)網站制作

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)
夫妻性生活在线视频一级片| 国产精品成人一区二区三| 精品国产一区二区三区四不卡在线| 真实国产熟女一区二区三区| 日本一区二区视频播放网站| 国产一区二区视频在线| 男男啪啪猛进猛出无遮挡| 中文字幕有码av海量| 亚洲熟妇一区二区在线| 日韩精品一区高清视频| 国产饥渴熟女在线三区| 国产精品午夜视频免费观看| 国产精品一区午夜福利| 亚洲综合一区国产精品| 精品人妻一区二区三区乱码| 欧美口爆吞精在线播放| 97久久精品亚洲中文字幕| 国产三级精品三级在线播放| 国产国语激情对白在线| 日韩欧美午夜福利在线视频| 超碰免费在线公开97| 日韩av人妻一区二区三区| 日韩性视频激情在线一区| 国产91在线视频播放| 国产亚洲精品第一最新| 日韩国产乱码一区中文字幕| 黄色av一本二本在线观看| 色在线观看综合亚洲欧洲| 高级会所口爆视频在线播放视频 | 亚洲中文有码一区二区| 久久精品国产亚洲av麻| 欧美日韩在线视频第三区| 亚洲中文字幕精品视频乱码| 91精品亚洲内射孕妇| 日本黄色小网站在线播放| 一级片欧美女人性生活片| 欧美日韩在线视频一区| 亚洲一区免费在线视频| 中国一级黄片免费欧美| 国产经典午夜福利在线| 国产三级三级在线观看|