수동으로 닫힐 때까지 gnuplot-x11 그래픽 창을 열어 두는 방법은 무엇입니까?

수동으로 닫힐 때까지 gnuplot-x11 그래픽 창을 열어 두는 방법은 무엇입니까?

예를 들어, 다음은 gnuplot-x11키를 누를 때까지 그래픽 창을 열어 둡니다.

gnuplot -e "plot \"file\" ; pause -1 \"text\""

수동으로 닫을 때까지 열어 두는 방법은 무엇입니까?

답변1

사용 -p또는 --persist옵션:

gnuplot --persist -e 'plot sin(x)'

이렇게 하면 수동으로 닫힐 때까지 창이 열린 상태로 유지됩니다. ~에서매뉴얼 페이지:

-p,  --persist  lets  plot  windows  survive after main gnuplot program
                exits.

답변2

pause mouse close스크립트 마지막에 사용하는 것이 좋습니다 . 이를 통해 --persist또는 와 달리 추가 폴링 없이 마우스와 다양한 키 바인딩을 사용하여 도면을 제어할 수 있습니다 reread.

기본 키 바인딩에는 다음이 포함됩니다.

 <B1> doubleclick   send mouse coordinates to clipboard (pm win wxt x11)
 <B2>               annotate the graph using `mouseformat` (see keys '1', '2')
                    or draw labels if `set mouse labels is on`
 <Ctrl-B2>          remove label close to pointer if `set mouse labels` is on
 <B3>               mark zoom region (only for 2d-plots and maps)
 <B1-Motion>        change view (rotation); use <Ctrl> to rotate the axes only
 <B2-Motion>        change view (scaling); use <Ctrl> to scale the axes only
 <Shift-B2-Motion>  vertical motion -- change xyplane
 <B3-Motion>        change view (azimuth)
 <wheel-up>           scroll up (in +Y direction)
 <wheel-down>         scroll down
 <shift-wheel-up>     scroll left (in -X direction)
 <shift-wheel-down>   scroll right
 <Control-WheelUp>    zoom in on mouse position
 <Control-WheelDown>  zoom out on mouse position
 <Shift-Control-WheelUp>    pinch on x
 <Shift-Control-WheelDown>  expand on x

 q            * close this plot window

 a               `builtin-autoscale` (set autoscale keepfix; replot)
 b               `builtin-toggle-border`
 e               `builtin-replot`
 g               `builtin-toggle-grid`
 h               `builtin-help`
 i               `builtin-invert-plot-visibilities`
 l               `builtin-toggle-log` y logscale for plots, z and cb for splots
 L               `builtin-nearest-log` toggle logscale of axis nearest cursor
 m               `builtin-toggle-mouse`
 r               `builtin-toggle-ruler`
 V               `builtin-set-plots-invisible`
 v               `builtin-set-plots-visible`
 1               `builtin-previous-mouse-format`
 2               `builtin-next-mouse-format`
 5               `builtin-toggle-polardistance`
 6               `builtin-toggle-verbose`
 7               `builtin-toggle-ratio`
 n               `builtin-zoom-next` go to next zoom in the zoom stack
 p               `builtin-zoom-previous` go to previous zoom in the zoom stack
 u               `builtin-unzoom`
 +               `builtin-zoom-in` zoom in
 =               `builtin-zoom-in` zoom in
 -               `builtin-zoom-out` zoom out
 Right           `scroll right in 2d, rotate right in 3d`; <Shift> faster
 Up              `scroll up in 2d, rotate up in 3d`; <Shift> faster
 Left            `scroll left in 2d, rotate left in 3d`; <Shift> faster
 Down            `scroll down in 2d, rotate down in 3d`; <Shift> faster
 <               `rotate azimuth left in 3d`; <ctrl> faster
 >               `rotate azimuth right in 3d`; <ctrl> faster
 Escape          `builtin-cancel-zoom` cancel zoom region

답변3

플로팅 프로그램을 주기적으로 새로 고쳐 라이브 차트로 만들 수 있습니다. 이는 파일을 업데이트하는 데이터 로거와 함께 가장 일반적으로 사용됩니다.

하지만 귀하의 질문에 관한 한 줄거리는 열린 상태로 유지되며, 이는 귀하가 누를 때까지 상쾌합니다.Ctrl-C

그리기 프로그램 끝에 다음 두 줄을 추가하세요.

pause 30
reread

이것의 한 가지 장점은 특히 디버깅할 때 gnuplot 환경을 사용하기 위해 종료할 필요가 없다는 것입니다. 플로팅을 중지하면 gnuplot 프롬프트로 돌아갑니다. 여전히 !vi plotpgm.gpgnuplot 환경을 사용하여 프로그램을 편집한 다음 load "plotpgm.gp명령을 사용하여 다시 시작할 수 있습니다.


관련 정보