|
From: Sterling S. <sm...@fu...> - 2014-03-17 17:02:08
|
Florian, I think that you need to add the ax.titleOffsetTrans to the ax.transAxes transformation. ax.text(0,pos[1],letter,transform=ax.transAxes+ax.titleOffsetTrans,va=va) -Sterling On Mar 17, 2014, at 6:31AM, Florian M. Wagner wrote: > Dear users, > > I would like label my subplots with a horizontally left-aligned letter (wanted by the journal) and the normal, centered axes title, which should both be vertically in line. The following example does not work: > > from matplotlib import pyplot as plt > import numpy as np > > fig, ax1 = plt.subplots() > x = np.linspace(1,10) > y = (sin(x)) > ax1.plot(x,y) > > def subplot_label(ax, letter, title): > title = ax.set_title(title) > pos = title.get_position() > va = title.get_va() > ax.text(0, pos[1], letter, transform=ax.transAxes, verticalalignment=va) > > subplot_label(ax1, 'a)', 'This text is not aligned with the label') > > Which property of the axes title am I missing? > > Thank you for your help > ------------------------------------------------------------------------------ > Learn Graph Databases - Download FREE O'Reilly Book > "Graph Databases" is the definitive new guide to graph databases and their > applications. Written by three acclaimed leaders in the field, > this first edition is now available. Download your free book today! > http://p.sf.net/sfu/13534_NeoTech_______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users |