本文介绍如何在Matplotlib中使用LaTeX 公式和符号Python如何生成LaTeX数学公式


1、Matplotlib中使用LaTeX 公式和符号

一些配置

  • 安装两个软件,链接给出。

  • https://mirrors.cqu.edu.cn/CTAN/systems/windows/protext/protext-3.2-033020.zip

  • https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9531/gs9531w64.exe

  • 添加到环境变量中

以下两句放到环境变量中。C:\Users\xx\AppData\Local\Programs\MiKTeX 2.9\miktex\bin\x64;C:\Program Files\gs\gs9.53.1\bin;

  • matplotlib.rcParams修改

import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as pltplt.style.use('fivethirtyeight')
mpl.rcParams['text.usetex'] = True#默认为false,此处设置为TRUE

Matplotlib中使用Latex字符和公式

mpl.rcParams['lines.linewidth'] = 1fig, ax = plt.subplots(dpi=120)N = 500
delta = 0.6
X = np.linspace(-1, 1, N)
ax.plot(X, (1 - np.tanh(4 * X / delta)) / 2,    X, (1.4 + np.tanh(4 * X / delta)) / 4, "C2", X, X < 0, "k--")                        ax.set_xlabel(r'No.1: $\alpha > \beta)#上下标,上标^,下标
ax.set_ylabel(r'No.2: $\alpha_i > \beta^i,rotation=45)# #累加、累积
ax.legend((r'No.3: $\displaystyle\sum_{i=0}^\infty x_i, r'No.4: $\displaystyle\prod_{i=0}^\infty x_i),shadow=True, loc=(0.01, 0.52), handlelength=1.5, )#分数
ax.set_title(r'No.4: $\frac{3}{4})#二项式
ax.text(0.3,1.1,r'No.5: $\frac{5 - \frac{1}{x}}{4})#开根号
ax.text(0.8,1.1,r'No.6: $\sqrt[3]{x})#修改字体
## Roman、Italic、Typewriter、CALLIGRAPHY等
ax.text(-0.8,1.1,r'No.7: $\mathit{Italic})
ax.text(-0.8,1.0,r'$\mathsf{fonts})#声调
ax.text(-1.2,1.1,r'No.8: $\breve a)#选个范围
ax.text(-1.4,0.8,r'No.9: $\widetilde{xyz})# the arrow
ax.annotate("", xy=(-delta / 2., 0.1), xytext=(delta / 2., 0.1),arrowprops=dict(arrowstyle="<->", connectionstyle="arc3"))#  其它TeX symbols
ax.set_xticks([-1, 0, 1])
ax.set_xticklabels([r"No.10: $\delta$", r"$\pm$", r"$\$"], color="r", size=15)ax.set_yticks([0, 0.5, 1])
ax.set_yticklabels([r"No.10: $\AA$", r"$\Downarrow$", "$\\odot$"], color="r", size=15)ax.text(1.02, 0.5, r"$\phi$",fontsize=20, rotation=90,horizontalalignment="left", verticalalignment="center",clip_on=False, transform=ax.transAxes)# 积分、微分公式
eq1 = (r"\begin{eqnarray*}"r"\frac{\partial \phi}{\partial t} + U|\nabla \phi| &=& 0 "r"\end{eqnarray*}")
ax.text(1, 0.9, eq1,horizontalalignment="right", verticalalignment="top")eq2 = (r"\begin{eqnarray*}"r"\mathcal{F} &=& \int f\left( \phi, c \right) dV, \\ "r"\frac{ \partial \phi } { \partial t } &=& -M_{ \phi } "r"\frac{ \delta \mathcal{F} } { \delta \phi }"r"\end{eqnarray*}")
ax.text(0.18, 0.18, eq2)ax.text(-1, .30, r"gamma: $\gamma$", color="r")
ax.text(-1, .18, r"Omega: $\Omega$", color="b")plt.show()


2、latexify生成LaTeX 数学公式

import math
import latexify
@latexify.with_latex#调用latexify的装饰器
def solve(a, b, c):return (-b + math.sqrt(b**2 - 4*a*c)) / (2*a)solve


3、handcalcs生成LaTeX 数学公式

  • 一个求积分公式,借助scipy的quad

import handcalcs.render
from scipy.integrate import quad#借助scipy.quad实现积分
%%render
a = 2
b = 6
n=100
z = quad(f,a,b)

  • 一个混合公式,借助math模块,

from math import sqrt,cos,sin,tan,asin
import handcalcs.render
%%render
#symbolic
f = a-c**2 / b + sqrt(cos(sin(b- 2 / c))) + tan(a/b) - asin(a/c) #Comment part


4、Latex symbols对照表

symbols爬取自网站:https://matplotlib.org/tutorials/text/mathtext.html、制作速查表。

plt.figure(dpi=400)
fig = sns.scatterplot(x='sepal length(cm)',y='sepal width(cm)',data=pd_iris,style=geek[:150],#添加不同类变量按照不同marker显示markers=[r"$"+geek[i]+"$" for i in range(150)],#自定义marker形状**dict(s=320),color='#01a2d9')fig.legend(ncol=5,fontsize=10,loc=8,bbox_to_anchor=(0.45, 1), facecolor='#eaeaea',          )sns.set(style="whitegrid",font_scale=1)

 

参考资料

https://matplotlib.org/tutorials/text/usetex.html
https://github.com/connorferster/handcalcs
https://github.com/google/latexify_py

-END-

往期精彩回顾适合初学者入门人工智能的路线及资料下载(图文+视频)机器学习入门系列下载中国大学慕课《机器学习》(黄海广主讲)机器学习及深度学习笔记等资料打印《统计学习方法》的代码复现专辑
AI基础下载机器学习交流qq群955171419,加入微信群请扫码:

【Python】Python+Matplotlib+LaTeX玩转数学公式相关推荐

  1. Python+Matplotlib+LaTeX玩转数学公式

    本文介绍如何在Matplotlib中使用LaTeX 公式和符号.Python如何生成LaTeX数学公式. 1.Matplotlib中使用LaTeX 公式和符号 一些配置 安装两个软件,链接给出. ht ...

  2. python数学公式编辑工具_使用Python一键生成LaTeX数学公式

    简介 latexify使用教程latexify-py模块安装 基本语法 实例加减乘除.分数 分段函数 根号.幂 三角函数 绝对值 对数 Markdown的数学公式相关教程 参考资料.GitHub地址 ...

  3. python画曲线图例-python使用matplotlib绘制折线图教程

    matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中. 它的文档相当完备,并 ...

  4. 如何使用python画折线图-python使用matplotlib绘制折线图教程

    matplotlib简介 matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序 ...

  5. python绘图实例-Python使用matplotlib简单绘图示例

    本文实例讲述了Python使用matplotlib简单绘图.分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #! python2 """ ...

  6. 简单python脚本实例画图-Python使用matplotlib简单绘图示例

    本文实例讲述了Python使用matplotlib简单绘图.分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #! python2 """ ...

  7. Python之matplotlib工具包使用入门——绘制简单图表

    matplotlib是Python中最常用的绘制图表的工具包,它提供一整套和MATLAB类似的绘图数据集,此外还有许多插件工具集,如绘制3D图形的mplot3,以及用于绘制地图的Catapy等,同时m ...

  8. 用代码写出浪漫__合集(python、matplotlib、Matlab、java绘制爱心、玫瑰花、前端特效玫瑰、爱心)

    活动地址:CSDN21天学习挑战赛 用代码写出浪漫合集(爱心.玫瑰花)       本文目录: ​一.前言 二.用python.matplotlib.Matlab.java绘制爱心 (1)爱心图形1( ...

  9. AI: Python 的Matplotlib 绘图算法库 介绍。

    Python 的Matplotlib 绘图算法库 介绍. Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形  . 通过 Matp ...

最新文章

  1. python常用标准库有哪些-Python开发中常用的标准库
  2. MySQL 命令行下执行.sql脚本
  3. lombok pom.xml依赖
  4. 【机器视觉】 HDevelop语言基础(三)-容器和保留字
  5. NYOJ15-括号匹配(二)-区间DP
  6. No relevant classes found. No output generated、metaObject连接错误
  7. Lightroom 如何安装lrplugin格式插件
  8. 配置gitlab环境实现代码管理及Web Hook测试和ldap认证
  9. [导入]七大千年数学难题
  10. 【纸牌识别】基于matlab灰度二值化纸牌识别【含Matlab源码 464期】
  11. 如果计算机正执行屏幕保护程序 当用户,计算机一级考试考参试题(含答案)章节一.doc...
  12. rs422/rs485通信接口原理图
  13. java实现psd格式图片读入
  14. html超链接能post吗,通过html超链接进行POST
  15. macbook pro 重置SMC
  16. 第4讲:C# 入门教程 入门知识(黄菊华NET网站开发、C#网站开发、Razor网站开发教程)
  17. 用户故事地图,产品经理必须掌握的分析利器
  18. java实现咖啡店模拟_Java咖啡厅系统
  19. 用编程学数学:让数学不枯燥,让编程不神秘!
  20. 一文梳理人脸识别,看完全都懂了!

热门文章

  1. jQuery解决高度统一问题
  2. 一次MySQL性能优化实战(转)
  3. Android 系统自带 Theme(主题)
  4. 和身份证有关的5个Excel函数公式
  5. 正则表达式,grep,sed,
  6. Android 网络交互之MD5为什么要加盐
  7. jquery validation remote进行唯一性验证时只使用自定义参数,不使用默认参数
  8. 创新式开发探索(一) —— 开篇
  9. csv文件怎么转成excel_怎么把word转成excel
  10. 从零入门 FreeRTOS 操作系统之创建任务流程