라텍스로 PDF를 만드는 방법은 무엇입니까?

라텍스로 PDF를 만드는 방법은 무엇입니까?

어리석은 질문을 해서 죄송합니다. 이거 그냥 사용해보려고 하는데 아무것도 모르겠어요.

내 문제는: Python 코드로 그래프를 플롯하고 싶습니다.

다음을 호출하여 터미널에서 실행합니다(Mac을 사용하고 있습니다). pdflatex -shell-escape plot_air_drag.tex

! `plot_air_drag.tex' 파일을 찾을 수 없습니다.

<*>plot_air_drag.tex

(다시 시도하려면 Enter를 누르고, 종료하려면 Control-D를 누르십시오.)

다른 입력 파일 이름을 입력하십시오:

실행하는 방법은 무엇입니까?

내 코드는 다음과 같습니다.

\documentclass[a4paper]{book}
\usepackage{pgfplots}
\usepackage{python}

\pagestyle{empty}

\begin{document}

\begin{python}
    from pylab import *
from scipy.integrate import odeint
from functools import partial

## set initial conditions and parameters
g = 9.81            # acceleration due to gravity
th = 45.            # set launch angle
th = th * np.pi/180.   # convert launch angle to radians
v0 = 20.0           # set speed

x0=0                # specify initial conditions
y0=0
vx0 = v0*sin(th)
vy0 = v0*cos(th)

## define function to compute f(X,t)
def f_func_k(k,state,time):
    f = zeros(4)    # create array to hold f vector
    f[0] = state[2] # f[0] = x component of velocity
    f[1] = state[3] # f[1] = x component of velocity
    f[2] = - k*(f[0]**2 + f[1]**2)**(0.5)*f[0]         # f[2] = acceleration in x direction
    f[3] = -g - k*(f[0]**2 + f[1]**2)**(0.5)*f[1]       # f[3] = acceleration in y direction
    return f

def gen_plot_data(s,k):
    f_func = partial(f_func_k,k)

    ## set initial state vector and time array
    X0 = [ x0, y0, vx0, vy0]        # set initial state of the system
    t0 = 0.
    # tf = input("Enter final time: ")
    # tau = input("Enter time step: ")
    tf = 3
    tau = 0.05

    # create time array starting at t0, ending at tf with a spacing tau
    t = arange(t0,tf,tau)

    ## solve ODE using odeint
    X = odeint(f_func,X0,t) # returns an 2-dimensional array with the
    # first index specifying the time and the
    # second index specifying the component of
    # the state vector

    # putting ':' as an index specifies all of the elements for
    # that index so x, y, vx, and vy are arrays at times specified
    # in the time array
    x = X[:,0]
    y = X[:,1]
    vx = X[:,2]
    vy = X[:,3]

    xy = zip(x,y)
    np.savetxt(s,xy,fmt='%0.5f')

gen_plot_data("plotdata1.dat",0.04)
gen_plot_data("plotdata2.dat",0)
\end{python}

\begin{tikzpicture}
    \begin{axis}[no marks,samples=100,axis lines=center,xlabel=$x$,ylabel=$y$,enlargelimits]
        \addplot table {plotdata1.dat};%
        \addplot[magenta] table {plotdata2.dat};%
    \end{axis}
        \end{tikzpicture}

\end{document}

답변1

Mac 10.9.2 및 pdfTeX 버전 3.1415926-2.5-1.40.14(TeX Live 2013)에서 잘 작동합니다. 하지만:

파일을 다음 이름으로 저장하세요.plot_air_drag.tex(오류 메시지는 다른 파일 이름을 사용하고 있음을 나타냅니다)

서문 수정

\documentclass[a4paper]{book}
\usepackage{pgfplots}
\pgfplotsset{compat=1.10}
\usepackage{python}

터미널을 시작하고,

cd를 입력 Space하고폴더거기 파일이랑.

Enter 키를 누르세요.

그리고 사용pdflatex -shell-escapeplot_air_drag.tex 여기에 이미지 설명을 입력하세요

관련 정보