Python在画图时使用特殊符号的方法总结

作者:sinysama 时间:2021-12-27 22:29:34 

本文总结了python画图中使用各种特殊符号方式

一、问题背景

在论文中,如何使用特殊符号进行表示?这里给出效果图和代码

Python在画图时使用特殊符号的方法总结

完整代码:

from matplotlib import pyplot
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
from matplotlib.ticker import MultipleLocator, FormatStrFormatter
font_set = FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=15)
import matplotlib
import numpy as np
from mpl_toolkits.axes_grid1.inset_locator import inset_axes
from mpl_toolkits.axes_grid1.inset_locator import mark_inset
from matplotlib.patches import ConnectionPatch
%matplotlib inline

plt.rcParams['figure.figsize'] = (8.0, 6.0) # set default size of plots
plt.rcParams['image.interpolation'] = 'nearest'
plt.rcParams['image.cmap'] = 'gray'
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False    
# 设置标题大小
plt.rcParams['font.size'] = '16'
#解决画多幅图时出现图形部分重叠
fig = plt.figure()
matplotlib.rcParams.update(
{
'text.usetex': False,
'font.family': 'stixgeneral',
'mathtext.fontset': 'stix',
}
)
myfont = FontProperties(fname='/home/linuxidc/.local/share/fonts/文泉驿正黑.ttf')

#准备数据
x = range(0,31,2)

A=[0.2204262385828951,0.30839304560351055,0.4176158354528364,0.5689115113547377,0.7132088021728286,0.8170438670019559,0.874248496993988,0.8998229892687244,0.9022254048694502,0.9059819476369345,0.9094392004441977,0.9087585175336547,0.9070491438736936,0.9061997894620201,0.9090201312423535,0.905820399113082]
B=[0.16086354829781346,0.24623673832139087,0.37067344907663385,0.5243875153820338,0.6455296269608115,0.7488125174629785,0.8000445335114674,0.8252572187188848,0.8275862068965517,0.8340528115714526,0.8372015546918379,0.837903717245582,0.8390037802979764,0.8358911851072082,0.8319986653319986,0.8359756097560975]
C=[0.18306116800442845,0.2870632672332389,0.4144089350879133,0.5520192415258978,0.7109362008757829,0.8372170997485331,0.9124159429971054,0.9341066489655936,0.946792993279718,0.9503133935078769,0.9521488062187674,0.952635311063099,0.9535668223259951,0.9552372984652889,0.9439895451006562,0.9501552106430155]

#绘图
fig, ax = plt.subplots(1, 1)

ax.plot(x, A, marker='H',linewidth=2,markersize=7,label=r'$\alpha$')
ax.plot(x, B, marker='s',linewidth=2,markersize=7,label=r'$\ell$')
ax.plot(x, C, marker='D',linewidth=2,markersize=7,label=r'$\mu$')
plt.grid(linestyle='-.')  
plt.grid(True)
y_major_locator=MultipleLocator(0.1)
x_major_locator=MultipleLocator(2)
ax=plt.gca()
ax.xaxis.set_major_locator(x_major_locator)
ax.yaxis.set_major_locator(y_major_locator)
plt.ylim(0,1.0)
plt.xlim(0,31)

plt.legend()  # 让图例生效
plt.title(r'$\alpha$ aaa')
plt.xlabel('X-axis',fontproperties=font_set) #X轴标签
plt.ylabel("Y-axis",fontproperties=font_set) #Y轴标签

plt.grid(linestyle='-.')  

plt.show()

二、注意事项

应用例子,可以在标题(title)、坐标轴名(xlabel、ylabel)、标注标签处(label)增加。注意使用label等号后面使用“r”,否则直接报错。
以此为例进行替换即可↓

ax.plot(x, A, marker='H',linewidth=2,markersize=7,label=r'$\alpha$')

三、常见特殊符号及对应代码

符号αβδε
代码$\alpha$$\beta$$\delta$$\ell$$\varepsilon$
符号Φγηιφ
代码$\phi $$\gamma$$\eta$$\iota$$\varphi$
符号λμπθρ
代码$\lambda$$\mu$$\pi$$\theta$$\rho$
符号στωξΓ
代码$\sigma$$\tau$$\omega$$\xi$$\Gamma$

四、引入特殊符号的万能方法

那么肯定有人要问了,如果要表达的字符很复杂怎么办,比如带公式的。

事实上,这里有个通用方式。但是需要安装MathType。该方法在外文文献的Latex排版中也同样适用。

简单三步如下,:

①下载mathtype,并关联word

Python在画图时使用特殊符号的方法总结

②打入你的表达式,编辑并复制

Python在画图时使用特殊符号的方法总结

③在word输入位置黏贴

Python在画图时使用特殊符号的方法总结

只需关注最后一行的

\[\int {\frac{{n!}}{{r!\left( {n - r} \right)!}}} \]

去掉两边的“\[”和“\]”

保留结果为

\int {\frac{{n!}}{{r!\left( {n - r} \right)!}}}

调用的时候两边加上$即可

ax.plot(x, C, marker='D',linewidth=2,markersize=7,label=r'$\int {\frac{{n!}}{{r!\left( {n - r} \right)!}}} $')

效果如下:

Python在画图时使用特殊符号的方法总结

来源:https://blog.csdn.net/QAQIknow/article/details/124390075

标签:Python,特殊符号
0
投稿

猜你喜欢

  • 整理Python中的赋值运算符

    2021-10-30 16:25:21
  • python实现人人网登录示例分享

    2022-06-25 09:17:51
  • 详解Python描述符的工作原理

    2022-03-16 19:02:59
  • django执行原生SQL查询的实现

    2023-11-11 13:34:04
  • 如何调用SQL Server的存储过程?

    2009-11-15 20:15:00
  • sql随机记录之如何解决每次RND的结果都一样的问题?

    2007-09-11 13:24:00
  • 解决mysql数据库数据迁移达梦数据乱码问题

    2024-01-27 07:40:12
  • Go语言中的IO操作及Flag包的用法

    2024-04-27 15:31:31
  • 使用SpringBoot + Redis 实现接口限流的方式

    2023-07-11 00:06:49
  • 如何使用Python实现一个简易的ORM模型

    2021-05-18 19:24:46
  • 如何提升JavaScript的运行速度(DOM篇)[译]

    2009-02-25 12:24:00
  • 用一个例子来认识innerText,innerHTML

    2007-12-24 17:17:00
  • asp如何设定程序的执行次数?

    2010-05-18 18:31:00
  • 聊聊Flare应用前后端性能优化问题

    2023-03-07 18:51:33
  • Python爬虫实战演练之采集拉钩网招聘信息数据

    2022-02-05 12:54:32
  • python 读取文本文件的行数据,文件.splitlines()的方法

    2021-07-18 16:58:05
  • Python Asyncio 库之同步原语常用函数详解

    2021-04-27 03:50:39
  • python用moviepy对视频进行简单的处理

    2023-08-03 07:02:15
  • 白鸦:Design IT. (1),迭代的设计

    2008-08-27 21:11:00
  • Python 操作 PostgreSQL 数据库示例【连接、增删改查等】

    2021-12-14 00:54:08
  • asp之家 网络编程 m.aspxhome.com