matplotlib로 만든 그래프를 tikz로 출력
5659 단어 Tikz파이썬LaTeXmatplotlib
소개
matplotlib2tikz라는 패키지를 발견했습니다.
이 패키지는 matplotlib로 그래프를 만들고 Tikz라는 이미지를 생성 할 수있는 언어로 출력 할 수 있습니다.
Tikz는 다음 기사를 참조하십시오.
PGF/Tikz를 추천하는 기사
환경
설치
terminal에 다음과 같이 입력하여 설치
pip install matplotlib2tikz
종속성에 있는 패키지는
matplotlib, numpy, Pillow, six
그렇지 않으면 추가로 설치됩니다.
사용법
사용하기 전에 다음과 같이 패키지를로드하십시오.
from matplotlib2tikz import save as tikz_save
평소와 같이 matplotlib에서 plot하고 savefig를 호출하는 대신
tikz_save('hoge.tex')
로 저장하면 좋을 것 같습니다.
해보자
실천.
$ y =\sin x $와 $ y =\cos x $를 그려보고 싶습니다.
파이썬 소스 코드에서 다음과 같이하십시오.
당연히 tex에 포함되므로 수식 환경을 $로 묶으면 사용할 수 있습니다.
import matplotlib.pyplot as plt
import matplotlib2tikz.save as tikz_save
import numpy as np
x = np.linspace(-4.0, 4.0, 100)
y1 = np.cos(x)
y2 = np.sin(x)
plt.plot(x, y1, label = '$y=\cos x$')
plt.plot(x, y2, label = '$y=\sin x$')
plt.xlabel('$x$')
plt.ylabel('$y$')
plt.ylim(-1.0, 1.0)
# 凡例を表示
plt.legend()
# グリッドを表示
plt.grid()
# 保存
tikz_save('scos.tex')
이렇게하면 scos.tex가 생성되므로이 tex를 삽입하지만 프리앰블에 다음을 추가합니다.
\usepackage[utf8]{inputenc}
\usepackage{fontspec} % This line only for XeLaTeX and LuaLaTeX
\usepackage{pgfplots}
fontspec은 XeLaTex 또는 LuaLaTex를 사용할 때 넣어야합니다.
이번에는 platex로 컴파일하므로 utf8과 pgfplots를 사용합니다.
\documentclass[border=0.5pt,class=jsarticle]{standalone}
\usepackage[dvipdfmx]{graphicx}
\usepackage[utf8]{inputenc}
\usepackage{pgfplots}
\begin{document}
\input{scos.tex}
\end{document}
그리고 platex ⇨ dvipdfmx로 pdf로 설정하면 다음과 같은 그림이 나타납니다.
요약
아름다운 그래프가 나왔다!
Reference
이 문제에 관하여(matplotlib로 만든 그래프를 tikz로 출력), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/penpenpen/items/5eca7fb867cfe08f68f6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
from matplotlib2tikz import save as tikz_save
tikz_save('hoge.tex')
실천.
$ y =\sin x $와 $ y =\cos x $를 그려보고 싶습니다.
파이썬 소스 코드에서 다음과 같이하십시오.
당연히 tex에 포함되므로 수식 환경을 $로 묶으면 사용할 수 있습니다.
import matplotlib.pyplot as plt
import matplotlib2tikz.save as tikz_save
import numpy as np
x = np.linspace(-4.0, 4.0, 100)
y1 = np.cos(x)
y2 = np.sin(x)
plt.plot(x, y1, label = '$y=\cos x$')
plt.plot(x, y2, label = '$y=\sin x$')
plt.xlabel('$x$')
plt.ylabel('$y$')
plt.ylim(-1.0, 1.0)
# 凡例を表示
plt.legend()
# グリッドを表示
plt.grid()
# 保存
tikz_save('scos.tex')
이렇게하면 scos.tex가 생성되므로이 tex를 삽입하지만 프리앰블에 다음을 추가합니다.
\usepackage[utf8]{inputenc}
\usepackage{fontspec} % This line only for XeLaTeX and LuaLaTeX
\usepackage{pgfplots}
fontspec은 XeLaTex 또는 LuaLaTex를 사용할 때 넣어야합니다.
이번에는 platex로 컴파일하므로 utf8과 pgfplots를 사용합니다.
\documentclass[border=0.5pt,class=jsarticle]{standalone}
\usepackage[dvipdfmx]{graphicx}
\usepackage[utf8]{inputenc}
\usepackage{pgfplots}
\begin{document}
\input{scos.tex}
\end{document}
그리고 platex ⇨ dvipdfmx로 pdf로 설정하면 다음과 같은 그림이 나타납니다.
요약
아름다운 그래프가 나왔다!
Reference
이 문제에 관하여(matplotlib로 만든 그래프를 tikz로 출력), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/penpenpen/items/5eca7fb867cfe08f68f6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(matplotlib로 만든 그래프를 tikz로 출력), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/penpenpen/items/5eca7fb867cfe08f68f6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)