2016-03-28 5 views
0

У меня есть следующий сюжет:Добавить Общий X-оси описатель к нижней части Pyplot сюжетных

enter image description here

И мне нужно, чтобы поместить текст на «общие» оси х - такое, что описание четко относится к оси х каждого из трех графиков вдоль столбца.

Как получить доступ к метке для оси 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

Вы можете создать большие подрисунки (скажем, «суб») и дать й-ярлык к нему. Три другие цифры (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') 
Смежные вопросы