[英]How to correctly write the '<' and '>' symbols using Latex in Matplotlib
我試圖使用Matplotlib繪制一個帶有圖例的圖,我想指定用於獲取我正在繪制的數據的一些變量的范圍。
所以我做了以下事情:
plt.rc('text', usetex=True)
plt.rc('font', family='serif')
plt.plot(E,P,"k*", label=r'with $\\vert \\Delta E \\vert$' + '< 0.039 && Mbc > 5.275')
plt.plot(Eit,Pit, 'k.', label=r'after iteration: $\\vert \\Delta E \\vert$ < 0.098 && Mbc > 5.273')
我也試圖將它們放在$$之間,但它正在工作......我該如何解決這個問題?
請注意,每個label
(在應用+
之后)都是包含兩個$
s的字符串。 <
或>
表示您只想在這些標記之間進行操作 ,因此請移動其中一個以包含它。
另請注意, &
同樣特別,但在這種情況下,你可以只在它前面放一個\\
。 (不是那種排版數學通常使用&&
,而是\\wedge
或只是“和”。)
這似乎是由您使用文本字體(“襯線”)引起的不具有在預期的地方<和>字形。 它在相應的插槽中具有¿和¡字形。 IIRC,原始的CM字體做到了這一點,但我認為“現代”系統使用更多的現代字體,沒有原始CM字體的限制。
您可以將相關部分放在數學模式中,就像Davis Herring在他的回答中所說的那樣 - 這可能是最好的方法,因為這些是數學符號,這使您免於必須找到具有“正確”字形的字體的瘋狂:
label=r'with $\vert \Delta E \vert < 0.039$ \&\& $Mbc > 5.275$')
或者您可以使用<和>的文本版本,但您必須擔心間距:
label=r'with $\vert \Delta E \vert$ \textless 0.039 \&\& Mbc \textgreater 5.275')
或者您可以使用在相應插槽中具有這些字形的字體:
plt.rc('font', family='monospace')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.