【Matplotlib】基础设置之文本公式04

发布时间:2024年01月05日

处理文本(数学表达式)

在字符串中使用一对 $$ 符号可以利用 Tex 语法打出数学表达式,而且并不需要预先安装 Tex。在使用时我们通常加上 r 标记表示它是一个原始字符串(raw string)

import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
# plain text
plt.title('alpha > beta')

plt.show()

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

# math text
plt.title(r'$\alpha > \beta$')

plt.show()

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

上下标

使用 _^ 表示上下标:

α i > β i \alpha_i > \beta_i αi?>βi?

r'$\alpha_i > \beta_i$'

∑ i = 0 ∞ x i \sum\limits_{i=0}^\infty x_i i=0?xi?

r'$\sum_{i=0}^\infty x_i$'

注:

  • 希腊字母和特殊符号可以用 ‘\ + 对应的名字’ 来显示
  • {} 中的内容属于一个部分;要打出花括号是需要使用 \{\}

分数,二项式系数,stacked numbers

3 4 , ( 3 4 ) , 4 3 \frac{3}{4}, \binom{3}{4}, \stackrel{3}{4} 43?,(43?),43?

r'$\frac{3}{4}, \binom{3}{4}, \stackrel{3}{4}$'

5 ? 1 x 4 \frac{5 - \frac{1}{x}}{4} 45?x1??

r'$\frac{5 - \frac{1}{x}}{4}$'

在 Tex 语言中,括号始终是默认的大小,如果要使括号大小与括号内部的大小对应,可以使用 \left\right 选项:

( 5 ? 1 x 4 ) (\frac{5 - \frac{1}{x}}{4}) (45?x1??)

r'$(\frac{5 - \frac{1}{x}}{4})$'

( 5 ? 1 x 4 ) \left(\frac{5 - \frac{1}{x}}{4}\right) (45?x1??)

r'$\left(\frac{5 - \frac{1}{x}}{4}\right)$'

根号

2 \sqrt{2} 2 ?

r'$\sqrt{2}$'

x 3 \sqrt[3]{x} 3x ?

r'$\sqrt[3]{x}$'

特殊字体

默认显示的字体是斜体,不过可以使用以下方法显示不同的字体:

命令显示
\mathrm{Roman} R o m a n \mathrm{Roman} Roman
\mathit{Italic} I t a l i c \mathit{Italic} Italic
\mathtt{Typewriter} T y p e w r i t e r \mathtt{Typewriter} Typewriter
\mathcal{CALLIGRAPHY} C A L L I G R A P H Y \mathcal{CALLIGRAPHY} CALLIGRAPHY
\mathbb{blackboard} b l a c k b o a r d \mathbb{blackboard} blackboard
\mathfrak{Fraktur} F r a k t u r \mathfrak{Fraktur} Fraktur
\mathsf{sansserif} s a n s s e r i f \mathsf{sansserif} sansserif

s ( t ) = A ? sin ? ( 2 ω t ) s(t) = \mathcal{A}\ \sin(2 \omega t) s(t)=A?sin(2ωt)

s(t) = \mathcal{A}\ \sin(2 \omega t)

注:

  • Tex 语法默认忽略空格,要打出空格使用 '\ '
  • \sin 默认显示为 Roman 字体

音调

命令结果
\acute a a ˊ \acute a aˊ
\bar a a ˉ \bar a aˉ
\breve a a ? \breve a a?
\ddot a a ¨ \ddot a a¨
\dot a a ˙ \dot a a˙
\grave a a ˋ \grave a aˋ
\hat a a ^ \hat a a^
\tilde a a ~ \tilde a a~
\4vec a a ? \vec a a
\overline{abc} a b c  ̄ \overline{abc} abc
\widehat{xyz} x y z ^ \widehat{xyz} xyz ?
\widetilde{xyz} x y z ~ \widetilde{xyz} xyz ?

特殊字符表

参1:http://matplotlib.org/users/mathtext.html#symbols

参2:https://intumu.com/chatgpt?stream=true

例子

import numpy as np
import matplotlib.pyplot as plt
t = np.arange(0.0, 2.0, 0.01)
s = np.sin(2*np.pi*t)

plt.plot(t,s)
plt.title(r'$\alpha_i > \beta_i$', fontsize=20)
plt.text(1, -0.6, r'$\sum_{i=0}^\infty x_i$', fontsize=20)
plt.text(0.6, 0.6, r'$\mathcal{A}\ \mathrm{sin}(2 \omega t)$',
         fontsize=20)
plt.xlabel('time (s)')
plt.ylabel('volts (mV)')
plt.show()

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

文章来源:https://blog.csdn.net/baidu_22713341/article/details/135416597
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。