LaTeX를 사용하여 테이블을 생성 할 수 있습니다. 테이블이 멋져 보이고 이미지를 생성하거나 문서에 직접 넣을 수 있기 때문입니다. 이것을 달성하기 위해 다음 코드를 사용했습니다.
#!/usr/bin/env
import numpy as np
import os
x = np.array([[1,2],[3,4]])
def generateLatexTable(x):
start = [r'\documentclass[preview]{standalone}', r'\begin{document}', r'\begin{tabular}{%s}' % ('{1}{0}{1}'.format('|'.join(['r'] * x.shape[1]), '|')), r'\hline']
tab = [' & '.join(['%d' % val for val in row]) + r' \\ \hline' for row in x]
end = [r'\end{tabular}', r'\end{document}']
text = '\n'.join(start + tab + end)
return text
with open('table.tex', 'w') as f:
f.write(generateLatexTable(x))
os.system("pdflatex table.tex")
여기서 문서 클래스 preview
는 문서 의 내용, 즉 테이블로 크기가 조정 된 이미지를 반환하는 데 사용됩니다. tabular
환경 만 데이터를 표시하는 데 사용됩니다. 셀 사이에 가로 막대와 세로 막대가 있지만이를 변경하는 것은 매우 쉽습니다. 변수 tab
에서 데이터는 각 행에 대해 처리되고 문자열로 변환됩니다. 이 위치에서 출력 형식을 지정해야합니다. %d
모든 것이 정수로 변환되도록 설정했습니다 .
당신은 라텍스 소스에 직접 테이블을 사용하려는 경우, 당신은 제거해야 documentclass
하고 \begin{document}
뿐만 아니라 \end{document}
의 변수 start
와 end
. 마지막으로 모든 것이 라텍스 소스에 모여 디스크에 다음과 같이 저장됩니다 table.tex
. 결국 이미지를 원하면 결과 파일이로 컴파일됩니다 table.pdf
.
출력 결과는 다음과 같습니다. 그러나 내가 말했듯이 LaTeX이기 때문에 모양을 변경하는 것은 매우 쉽습니다. :)
다음은 0에서 100 사이의 난수로 채워진 큰 행렬 (14 x 14)을 가진 또 다른 예입니다.
table
시작하기에 좋은 장소 인 것 같습니다 . 나는 좋은 대답을 줄만큼 그것을 사용하지 않았습니다.