C'est un problème vraiment simple mais ça m'échappe. J'essaie juste d'insérer un symbole de degré dans les titres et légendes de mon graphique python. Le code est ci-dessous. Merci.
from numpy import *
import numpy as np
import matplotlib.pyplot as plt
theta1 = linspace(0,60,610)
theta2 = linspace(0,45,460)
theta3 = linspace(45,90,460)
CTS = 1/cos(radians(theta1))
CTS0 = 1/cos(radians(60-theta2))
CTS45 = 1/cos(radians(105-theta3))
plt.plot(theta1,CTS,label=u'CTS Head at 0',linewidth=2)
plt.plot(theta2,CTS0,label='CTS Head at 60',linewidth=2)
plt.plot(theta3,CTS45,label='CTS Head at 105',linewidth=2)
plt.xlabel('Manufactured Ply Angle (degrees)')
plt.ylabel('Thickness')
plt.legend( loc='lower right', numpoints = 1 )
plt.ylim([0,2.5])
plt.grid(b=None, which='major', axis='both')
plt.grid(color='k', linestyle='--', linewidth=0.5)
plt.axhline(y=1.035, xmin=0, xmax=90,color='k', linestyle='-', linewidth=1)
plt.show()
Utilisez le style LaTeX. Par exemple: $^\circ$ Text
Produirait °Text
Voir documentation matplotlib pour plus d'informations sur l'impression (en particulier l'expression mathématique).
Dans votre cas, le code doit être: plt.xlabel('Manufactured Ply Angle $^\circ$')
La partie TeX de l'expression doit être entourée des signes dollar "$".
Utilisez les mathématiques LaTeX. Sur mon système, la meilleure apparence visuelle est obtenue avec
label = r'$45\degree$'
et il ressemble exactement aux étiquettes thêta par défaut d'un tracé polaire.
Comme d'autres l'ont souligné
label = r'$45^\circ$'
label = '$45^o$'
etc. fonctionnent aussi mais l'apparence visuelle n'est pas si bonne. Sur mon système, ces solutions de contournement rendent un symbole légèrement trop petit. YMMV, donc on peut vouloir essayer ce qui semble le mieux sur son système.
Par exemple, sur un tracé de contour polaire où le rayon est le sinus de l'angle zénithal, on peut vouloir utiliser
deg_labels = np.array([5, 10, 20, 30, 45, 60, 90])
ax.set_rgrids(np.sin(np.deg2rad(deg_labels)),
labels=(r"${:.0f}\degree$".format(_) for _ in deg_labels))