ソースコードの所在: /home/kizu/pgplot/samples/pgex08.f
(このプログラムで描ける絵は、こちら)
PROGRAM PGEX08
C-----------------------------------------------------------------------
C Demonstration program for PGPLOT. This program shows some of the
C possibilities for overlapping windows and viewports.
C T. J. Pearson 1986 Nov 28
C-----------------------------------------------------------------------
INTEGER I, PGOPEN
REAL XR(720), YR(720)
C-----------------------------------------------------------------------
C Color index:
INTEGER BLACK, WHITE, RED, GREEN, BLUE, CYAN, MAGENT, YELLOW
PARAMETER (BLACK=0)
PARAMETER (WHITE=1)
PARAMETER (RED=2)
PARAMETER (GREEN=3)
PARAMETER (BLUE=4)
PARAMETER (CYAN=5)
PARAMETER (MAGENT=6)
PARAMETER (YELLOW=7)
C Line style:
INTEGER FULL, DASHED, DOTDSH, DOTTED, FANCY
PARAMETER (FULL=1)
PARAMETER (DASHED=2)
PARAMETER (DOTDSH=3)
PARAMETER (DOTTED=4)
PARAMETER (FANCY=5)
C Character font:
INTEGER NORMAL, ROMAN, ITALIC, SCRIPT
PARAMETER (NORMAL=1)
PARAMETER (ROMAN=2)
PARAMETER (ITALIC=3)
PARAMETER (SCRIPT=4)
C Fill-area style:
INTEGER SOLID, HOLLOW
PARAMETER (SOLID=1)
PARAMETER (HOLLOW=2)
C-----------------------------------------------------------------------
C
C Call PGOPEN to initiate PGPLOT and open the output device; PGOPEN
C will prompt the user to supply the device name and type. Always
C check the return code from PGOPEN.
C
IF (PGOPEN('?') .LE. 0) STOP
C
CALL PGPAGE
CALL PGBBUF
CALL PGSAVE
C
C Define the Viewport
C
CALL PGSVP(0.1,0.6,0.1,0.6)
C
C Define the Window
C
CALL PGSWIN(0.0, 630.0, -2.0, 2.0)
C
C Draw a box
C
CALL PGSCI(CYAN)
CALL PGBOX ('ABCTS', 90.0, 3, 'ABCTSV', 0.0, 0)
C
C Draw labels
C
CALL PGSCI (RED)
CALL PGBOX ('N',90.0, 3, 'VN', 0.0, 0)
C
C Draw SIN line
C
DO 10 I=1,360
XR(I) = 2.0*I
YR(I) = SIN(XR(I)/57.29577951)
10 CONTINUE
CALL PGSCI (MAGENT)
CALL PGSLS (DASHED)
CALL PGLINE (360,XR,YR)
C
C Draw COS line by redefining the window
C
CALL PGSWIN (90.0, 720.0, -2.0, 2.0)
CALL PGSCI (YELLOW)
CALL PGSLS (DOTTED)
CALL PGLINE (360,XR,YR)
CALL PGSLS (FULL)
C
C Re-Define the Viewport
C
CALL PGSVP(0.45,0.85,0.45,0.85)
C
C Define the Window, and erase it
C
CALL PGSWIN(0.0, 180.0, -2.0, 2.0)
CALL PGSCI(0)
CALL PGRECT(0.0, 180., -2.0, 2.0)
C
C Draw a box
C
CALL PGSCI(BLUE)
CALL PGBOX ('ABCTSM', 60.0, 3, 'VABCTSM', 1.0, 2)
C
C Draw SIN line
C
CALL PGSCI (WHITE)
CALL PGSLS (DASHED)
CALL PGLINE (360,XR,YR)
C
CALL PGUNSA
CALL PGEBUF
C
C Finally, call PGCLOS to terminate things properly.
C
CALL PGCLOS
C
END