2013-08-01 17 views
10

matplotlibでPythonを使用して技術論文の図を生成しています。凡例のテキストにLatex/Bibtex引用を含める方法はありますか?理想的には私は、次のようなソリューションの何かをしたいと思いますが、作品は何も見つかっていない。matplotlibでのラテックス引用凡例

import numpy as np 
import matplotlib as mp 
import matplotlib.pyplot as plt 

x = np.linspace(0., 1., num=100) 
y = x**2 

plt.plot(x, y, label=r'Data \cite{<key>}') 
plt.legend(loc=0) 
plt.show() 
+0

引用を手動で入力する必要があります。なぜなら、単に 'Data Ref。 [#] '? – wflynny

+0

私たちpsfrag https://en.wikipedia.org/wiki/PSfrag – tacaswell

+0

私は自分の論文でこれを使用しています。引用番号は頻繁に変更され、常に数字を更新するのは面倒です。 – LWhitson2

答えて

9

をこれはPython用matplotlibのをPGFバックエンドを使用して行うことができます。

import numpy as np 
import matplotlib as mpl 
mpl.use('pgf') 
import matplotlib.pyplot as plt 

x = np.linspace(0., 1., num=100) 
y = x**2 

plt.plot(x, y, label=r'Data \cite{<key>}') 
plt.legend(loc=0) 
plt.savefig('fig.pgf') 

PGFファイルは次にようなラテックス紙に利用することができる:次のようにグラフを生成するためのPythonのファイルは、LaTeXファイルがコンパイルされるたびに

\documentclass[letterpaper,10pt]{article} 
\usepackage[utf8x]{inputenc} 
\usepackage{pgf} 

\begin{document} 

    \begin{figure} 
    \centering 
    \input{fig.pgf} 
    \caption{Test Figure} 
    \end{figure} 

\end{document} 

、で引用伝説は自動的に更新されます。

+1

ニース!それが動作することを知って良い!私は将来、そのトリックを使わなければならないと思う... –

関連する問題