地块中的彩色乳胶标签

时间:2014-06-11 21:55:47

标签: python numpy matplotlib axis-labels

我试图让x标签着色,但我不知道如何建立它。困难在于我想使用LaTeX字体和“amsmath”包。

我的代码是:

import math
import numpy as np
import matplotlib.pyplot as plt


x,y=np.random.rand(20),np.random.rand(20)


plt.figure()

plt.rc('text', usetex=True)
plt.rcParams['text.latex.preamble']=[r"\usepackage{amsmath}"]


plt.plot(x,y,'.')




plt.xlabel(r'$x=\frac{\text{red}}{\text{blue}}$')
plt.ylabel(r'$y$')

#plt.savefig('colored_labels.png')

plt.show()

enter image description here

有没有人知道如何以明显的颜色制作x轴?

提前谢谢!

1 个答案:

答案 0 :(得分:1)

我认为这里的问题可能出现在乳胶制度中。 您的命令\text是一个在amsmath中出现的Latex命令,用于在方程式中设置文本。它不提供任何颜色。

如果没有在Python中自己尝试过,我建议您尝试在Latex中加载xcolor:

plt.rcParams['text.latex.preamble']=[r"\usepackage{xcolor}"]

然后你就可以使用xcolors'\color - 命令:

plt.xlabel(r'$x=\frac{ \color{red}{red text} }{ \color{blue}{blue text} }$')

同样,在Python中未经测试,但您甚至可以使用\text - 命令获得更好的结果:

plt.xlabel(r'$x=\frac{ \text{\color{red}{red text}} }{ \text{\color{blue}{blue text}} }$')

至少此代码的Latex部分有效,并为您提供所需的结果。

让我知道它是否适合你!