ich muss einen barplot auf die Breite 3.27 inch bekommen. Das Problem ist, dass ich
einen newline in meinen xticklabels und im xlabel habe. Dadurch wird mir immer die x-Achsenbeschriftung
abgeschnitten, wenn ich die figure-dimension (3.27,3) waehle. Wenn ich die hoehe veraendere (z.B. 6 inch), dann
wird der Text geplotted, der plot sieht aber nicht gut aus, weil er in die Laenge gezogen ist.
Hier mein code:
Code: Alles auswählen
import matplotlib.pyplot as mpl
import scipy
mpl.rcParams['legend.fancybox'] = True
mpl.rcParams['legend.fontsize'] = 8
mpl.rcParams['font.size']=8
mpl.rcParams['axes.labelsize']=8
mpl.rcParams['ytick.labelsize']=8
mpl.rcParams['xtick.labelsize']=8
mpl.rcParams['font.sans-serif']=["Arial"]
mpl.rcParams['figure.facecolor']='w'
fig = mpl.figure(figsize=(3.27, 3))
xticklabels = ('100%\n160', '2%\n160', '100%\n190', '2%\n190', '100%\n220', '2%\n220')
#barplot
data1 = [1,2,3,4,5,6]
data2 = [6,5,4,3,2,1]
error1 = [0.1, 0.3, 0.4, 0.2, 0.1, 0.2]
error2 = [0.3, 0.3, 0.2, 0.1, 0.3, 0.1]
N = len(data2)
ind = scipy.arange(N)
ax = fig.add_subplot(111)
width = 0.2
rects1 = ax.bar(ind + width, data1, width, color='y', yerr=error1, ecolor='k', alpha=0.5)
rects2 = ax.bar(ind, data2, width, color='r', yerr=error2, ecolor='k',alpha=0.5)
ax.set_xticks(ind+width)
ax.set_xticklabels(xticklabels)
mpl.xlabel("relative CK activity\nheart rate (bpm)")
mpl.ylabel(r"$t_{mito} (s)$")
mpl.legend((rects1[0], rects2[0]), ["data", "model prediction"], loc=0)
mpl.show()
mpl.savefig('figure2_fit_results.eps')
Vielen Dank im Voraus,
Hannes