บทความนี้จะพาทุกท่านไปสร้างไฟล์ LaTeX ใน Python กันครับ
ใน Python ได้มีนักพัฒนาได้สร้างโมดูลสำหรับสร้างไฟล์ LaTeX ออกมา ชื่อว่า "PyLaTeX" โดยมีความต้องการดังนี้
- รองรับทั้ง Python 3.x และ Python 2.7
- pdflatex (เฉพาะเมื่อคุณต้องการคอมไพล์ไฟล์ tex)
- NumPy (เฉพาะเมื่อคุณต้องการแปลงของ matrixes)
- ordered-set
- สร้างเอกสารและคอมไพล์
- ส่วน ตาราง คณิตศาสตร์ และ package classes
- คลาสเมตริกซ์ที่สามารถรวบรวม NumPy ndarrays และ matrices ไปยัง LaTeX
- ฟังก์ชันการหลบหนี
- ตัวหนา และตัวเอียง
- ทุก class มีวิธีการถ่ายโอนข้อมูล การเขียนผลลัพธ์เป็น filepointer
- MIT license
การติดตั้ง PyLaTeX
ใช้ pip ในการติดตั้งโดยใช้คำสั่งpip install pylatex
โค้ดตัวอย่างการใช้งาน PyLaTeX ในการสร้างไฟล์ LaTeX ใน Python
import numpy as np from pylatex import Document, Section, Subsection, Table, Math, TikZ, Axis, \ Plot from pylatex.numpy import Matrix from pylatex.utils import italic doc = Document() section = Section('Yaay the first section, it can even be ' + italic('italic')) section.append('Some regular text') math = Subsection('Math that is incorrect', data=[Math(data=['2*3', '=', 9])]) section.append(math) table = Table('rc|cl') table.add_hline() table.add_row((1, 2, 3, 4)) table.add_hline(1, 2) table.add_empty_row() table.add_row((4, 5, 6, 7)) table = Subsection('Table of something', data=[table]) section.append(table) a = np.array([[100, 10, 20]]).T M = np.matrix([[2, 3, 4], [0, 0, 1], [0, 0, 2]]) math = Math(data=[Matrix(M), Matrix(a), '=', Matrix(M*a)]) equation = Subsection('Matrix equation', data=[math]) section.append(equation) tikz = TikZ() axis = Axis(options='height=6cm, width=6cm, grid=major') plot1 = Plot(name='model', func='-x^5 - 242') coordinates = [ (-4.77778, 2027.60977), (-3.55556, 347.84069), (-2.33333, 22.58953), (-1.11111, -493.50066), (0.11111, 46.66082), (1.33333, -205.56286), (2.55556, -341.40638), (3.77778, -1169.24780), (5.00000, -3269.56775), ] plot2 = Plot(name='estimate', coordinates=coordinates) axis.append(plot1) axis.append(plot2) tikz.append(axis) plot_section = Subsection('Random graph', data=[tikz]) section.append(plot_section) doc.append(section) doc.generate_pdf()
ผลลัพธ์
PyLaTeX จะสร้างไฟล์ LaTeX ออกมาดังนี้

ติดตามบทความต่อไปนะครับ
ขอบคุณครับ
0 ความคิดเห็น:
แสดงความคิดเห็น
แสดงความคิดเห็นได้ครับ :)