Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 保存图形,使其具有相同的大小,不受x刻度、Y刻度和B刻度的影响_Python_Matplotlib_Save_Png_Figure - Fatal编程技术网

Python 保存图形,使其具有相同的大小,不受x刻度、Y刻度和B刻度的影响

Python 保存图形,使其具有相同的大小,不受x刻度、Y刻度和B刻度的影响,python,matplotlib,save,png,figure,Python,Matplotlib,Save,Png,Figure,我正试图创造一些数字出版。当我把它们插入乳胶中时,它们排列不整齐。基本上,因为x记号和标签不同,它们最终看起来是这样的: 我用来保存这些数字的代码如下: size_f = 20 #### Set labels #### ax.set_ylabel(r'$W_{kin} \ [eV]$', fontsize=size_f) ax.set_xlabel(r'$Time \ [sec]$', fontsize=size_f) #### Set fig dimensions #### plt.r

我正试图创造一些数字出版。当我把它们插入乳胶中时,它们排列不整齐。基本上,因为x记号和标签不同,它们最终看起来是这样的:

我用来保存这些数字的代码如下:

size_f = 20
#### Set labels ####
ax.set_ylabel(r'$W_{kin} \ [eV]$', fontsize=size_f)
ax.set_xlabel(r'$Time \  [sec]$', fontsize=size_f)


#### Set fig dimensions ####
plt.rcParams["figure.figsize"] = [10,8]

#### Set tick size ####
ax.tick_params(axis='x',labelsize=size_f)
ax.tick_params(axis='y',labelsize=size_f)


#### Save figure ####
fig.savefig(r'C:\Users\nikos.000\vlahos\png\Dw_UCS.png', format='png',dpi=300,bbox_inches='tight')

如何使框具有相同的大小,使图形更好地排列,而不受轴标记和标签的影响。

用于在同一图像中整齐地获得多个绘图。

我强烈建议您使用。您可以调整每个子批次的特征,而不会扰乱总体外观。我为您添加代码以使用您的项目

import matplotlib.pyplot as plt

x = range(10)
y = range(10)

size_f = 12

labels = ("(a)", "(b)", "(c)", "(d)")

fig, ax = plt.subplots(2, 2, figsize=(10, 8))
ax[0, 0].plot(x, y, 'r')
ax[0, 0].text(-0.1, 1., labels[0], transform=ax[0, 0].transAxes, fontsize=15, fontweight='normal', va='top', ha='right')
ax[0, 1].plot(x, y, 'b') 
ax[0, 1].text(-0.1, 1., labels[1], transform=ax[0, 1].transAxes, fontsize=15, fontweight='normal', va='top', ha='right')
ax[1, 0].plot(x, y, 'g') 
ax[1, 0].text(-0.1, 1., labels[2], transform=ax[1, 0].transAxes, fontsize=15, fontweight='normal', va='top', ha='right')
ax[1, 1].plot(x, y, 'k') 
ax[1, 1].text(-0.1, 1., labels[3], transform=ax[1, 1].transAxes, fontsize=15, fontweight='normal', va='top', ha='right')

for row in range(2):
    for col in range(2):
        ax[row, col].set_ylabel(r'$W_{kin} \ [eV]$', fontsize=size_f)
        ax[row, col].set_xlabel(r'$Time \  [sec]$', fontsize=size_f)

fig.subplots_adjust(wspace=0.3)
fig.subplots_adjust(hspace=0.3) 
fig.savefig(r'C:\Users\nikos.000\vlahos\png\Dw_UCS.png', format='png',dpi=300,bbox_inches='tight')
图为:


由于每个子包都有共同的和独立的特性,所以我没有将所有内容都放入块的

中,谢谢!太棒了!你知道我怎样才能改变标签的大小吗?你要求标签的大小吗?在
ax[row,col].set_ylabel(r'$W{kin}\[eV]$,fontsize=size\u f)
,只需更改
size\u f
。但是,我想,你想学一种不同的东西。你能再解释一下吗?或者你说的是(a)、(b)等的标签?然后在
ax[0,0]。text(-0.1,1.,labels[0],transform=ax[0,0]。transAxes,fontsize=15,fontwweight='normal',va='top',ha='right')
fontsize
参数从15增加到18或更多。确保应用了所有子批次。(
ax[0,0],ax[0,1],ax[1,0],ax[1,1]