2013-09-25 2 views
1

난 다음 명령 gnuplot을 사용하여 그래프를 생성 :gnuplot은 stdin에서 명령 줄 인수를 어떻게 이해합니까?

echo 'plot [0:14][0:1000] "source_data_file" with steps title "example graph"; pause 15' | gnuplot 

I가 xlabelylabel 인수와 함께 X 축과 Y 축 이름을 변경하고자하지만 실행할 경우 :

echo 'plot [0:14][0:1000] "source_data_file" with steps title "example graph" xlabel 'X-axe label' ylabel 'Y-axe label'; pause 15' | gnuplot 

.. xlabel을 가리키는 오류 메시지가 나타납니다. 인수를 세미콜론으로 구분하려고 시도했지만 영향이 없습니다. 또한 Y-ax의 형식을 지수 (예 : 1.8232e + 06)에서 정수 (예 : 1823200)로 변경하고 싶지만, format y/format x 인수를 gnuplot에 전달하는 방법을 모르겠습니다.

gnuplot이 stdin에서 gnuplot으로 전달되는 경우 명령 줄 인수를 어떻게 이해합니까?

+1

따옴표에 문제가 있습니다. 쉘에 따라이 문제를 해결하는 방법이 다를 수 있습니다. 정확하게, 레이블에 작은 따옴표를 사용하지만 작은 따옴표로 묶인 문자열로되어 있습니다. –

+0

@arbautjc 좀 더 설명해 주시겠습니까? "그들은 작은 따옴표로 묶여 있어야합니다"라는 의미는 무엇입니까? IMHO 그들은 이미 단일 인용 문자열에 있습니다. 아니면 "큰 따옴표로 묶여 있어야합니다"라는 뜻입니까? – Martin

답변

2

@arbautjc가 정확합니다. x 및 y 축 레이블에 작은 따옴표를 사용하는 데 문제가 있습니다. 또한 명령은 plot 명령이 실행되기 전에 지정해야합니다. 더 좋은 방법은

echo 'set xlabel "X-axe label"; set ylabel "Y-axe label"; plot [0:14][0:1000] "source_data_file" with steps title "example graph"' | gnuplot -p 

또한 pause 명령이 필요합니까? (거기에는 어떤 이유가있을 수 있지만 귀하의 예에서는 볼 수 없습니다.)

+0

생성 된 그래프를 15 초 동안 열어두기 위해'pause 15 '를 사용했습니다. 그렇지 않으면 그래프 창이 즉시 닫힙니다. 그러나 제공 한 명령이 내 gnuplot 4.4 (패치 레벨 3)에서 작동하지 않았습니다. "line 0 : invalid command"오류 메시지가 나타납니다. – Martin

+0

'echo 'xlabel "X-ax label"을 변경했습니다. ylabel "Y-ax label"; plot [0:14] [0 : 1000] "example graph"단계 제목이있는 "source_data_file"; 일시 중지 15 '| gnuplot'을 'echo'로 설정합니다. xlabel "X-ax label"; Y 라벨을 Y 라벨에 붙이세요. plot [0:14] [0 : 1000] "example graph"단계 제목이있는 "source_data_file"; 일시 중지 15 '| gnuplot' 그리고 이제는 필요에 따라 작동합니다. 감사! – Martin

관련 문제