2016-03-28 57 views
0

的底部,我有以下情節:添加總體X軸描述符Pyplot次要情節

enter image description here

,我需要放置在「整體」 x軸的一些文本 - 這樣的描述清楚地適用於沿着該列的三個圖中的每一個的x軸。

如何訪問持有子圖的表的X軸標籤? (或者在這裏適用的任何對象)。

import matplotlib.pyplot as plt 

f,(ax1,ax2,ax3) = plt.subplots(1,3, sharey=True) 

#plotted my stuff 
.... 

#now: how to add general label to entire subplot 

回答

1

您可以創建一個大的子圖(說「子」),並給出一個X-標籤來:

我用下面的代碼創建的圖表。其他三個數字(sub1,sub2,sub3)可作爲第一個子數字添加。現在,如果將x標籤應用於原始大子圖「sub」,則它對所有三個數字都顯示爲常見的x標籤。但是,您可以分別爲這三位數字添加不同的y標籤。下面給出了一個顯示相同內容的示例程序。

import numpy as np 
import matplotlib.pyplot as plt 

x = np.linspace(0.01,10,100) 
y1 = x 
y2 = np.log(x) 
y3 = np.exp(x) 

fig = plt.figure() 
sub = fig.add_subplot(111) 
sub1 = fig.add_subplot(131) 
sub2 = fig.add_subplot(132) 
sub3 = fig.add_subplot(133) 

sub1.plot(x, y1) 
sub2.plot(x, y2) 
sub3.plot(x, y3) 

sub.set_xlabel('functions of x') 
sub1.set_ylabel('$y=x$') 
sub2.set_ylabel('$y=sin(x)$') 
sub3.set_ylabel('$y=e^x$') 

plt.show() 
1

你可以試試fig.text。例如:

fig.text(0.5, 0.04, 'My xlabel text', ha='center', va='bottom')