这是一个非常简单的问题,但它逃避了我。我只是想在我的python情节的标题和图例中插入一个度数符号。代码如下。感谢。
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()
答案 0 :(得分:34)
使用LaTeX Style。例如:$^\circ$ Text
会产生°Text
有关打印(尤其是数学表达式)的更多信息,请参阅matplotlib documentation。
在您的情况下,代码必须是:plt.xlabel('Manufactured Ply Angle $^\circ$')
表达式的TeX部分必须用美元符号“$”括起来。
答案 1 :(得分:4)
使用LaTeX数学。 在我的系统上,使用
实现最佳视觉外观 label = r'$45\degree$'
它看起来与极坐标图的默认theta标签完全相同。
正如其他人指出的那样,像
这样的克拉奇label = r'$45^\circ$'
label = '$45^o$'
等。也工作,但视觉外观不太好。 在我的系统上,这些解决方法会使符号略微过小。 YMMV,因此人们可能想尝试在她的系统上看起来最好的东西。
例如,在极坐标角上,半径为天顶角的正弦 人们可能想要使用
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))
答案 2 :(得分:2)
使用度数unicode符号,尤其是在不需要LaTeX的其他符号的情况下。
U + 00B0:°
在python3中,它只是:plt.xlabel("Manufactured Ply Angle (°)")