
pgfplots
외부 파일(및 허용되는 파일 형식(예: txt
, ))에서 가져온 그래프의 표준 형식과 정확한 파일에서 데이터를 가져오려면 에 dat
들어가야 하는 내용을 아는 사람이 있습니까?\addplot
도움을 주셔서 감사합니다.
답변1
제가 생각하기에 일반 텍스트 파일만 지원되지만 파일 확장자는 원하는 대로 ,
.txt
,.dat
,.csv
,.montypython
무엇이든 가능합니다.표준 형식은 공백으로 구분된 열입니다. 즉, 기본 예상 열 구분 기호는 공백입니다(설명서를 인용하면 "최소 하나의 탭 또는 공백"). 그러나 키를 사용하여
col sep
다음과 같은 다양한 옵션을 가질 수 있는 다른 구분 기호를 지정할 수 있습니다.col sep=space|tab|comma|colon|semicolon|braces|&|ampersand
따라서 다음과 같은 텍스트 파일이 있는 경우
x y 1 1 2 3
그럼 넌 할 수 있어
\addplot table {<filename including extension>};
그리고 y 대 x의 플롯을 얻습니다.
pgfplots
달리 지시하지 않는 한 첫 번째 열은 x 값으로 사용하고 두 번째 열은 y 값으로 사용합니다.쉼표로 구분된 파일이 있는 경우, 즉
x,y 1,1 2,3
그럼 넌 말해야 해
\addplot table[col sep=comma] {<filename including extension>};
열이 세 개 이상인 경우 ,
x=<column name>, y=<column name>
또는 를 사용하여 x 및 y에 대해 원하는 열을 선택합니다x index=<number>, y index=<number>
. (물론 원하는 경우x
, 및index
의 이름을 사용할 수 있습니다.) 예를 들어,y
\addplot table[x=x, y=y] {<filename including extension>};
위에 표시된 첫 번째 예제 파일의 경우 열 제목은 실제로
x
및 입니다y
.첫 번째 행에 숫자만 포함되어 있으면
pgfplots
파일에 헤더 행이 없다고 가정하고 이를 열 이름으로 읽지 않습니다.- 는
<column name>
첫 번째 행에 작성된 텍스트이므로x
위의 예에서는 y`입니다. - 은
<number>
열 번호이지만 계산은 0부터 시작하므로 첫 번째 열을 얻으려면 을x
수행하십시오x index=0
.
- 는
관심 있는 경우 예제 코드:
\documentclass[border=5mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.15}
\usepackage{filecontents}
\begin{filecontents}{A.dat}
0 0
1 1
2 2
\end{filecontents}
\begin{filecontents}{B.csv}
0,1
1,2
2,3
\end{filecontents}
\begin{filecontents}{C.montypython}
foo bar baz
0 2 3
1 3 4
2 4 5
\end{filecontents}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot table {A.dat};
\addplot table[col sep=comma] {B.csv};
\addplot table[x=foo, y=bar] {C.montypython};
\addplot table[x index=0, y index=2] {C.montypython};
\legend{A,B,C1,C2}
\end{axis}
\end{tikzpicture}
\end{document}