2次元グラフ: plot

cx = readm("cos.dat");
x = (-2*pi:2*pi:0.1*pi)';

# Now create some plots

_plscolbg(255,255,255); 
plscol0(1,0,0,128); # 1:軸の色番号 
plscol0(2,240,0,0); # 1:表面の色番号 
plscol0(3,0,240,0); # 1:表面の色番号 
plwin_init(0,0,512,384,1,1); 
plsfile("plot2d.ps");  
#plstart (1,1,"psc"); # PS ファイルを作成する場合
plstart (1,1,"xwin");

plfont(1); # 1: Default,  2:Roman, 3:Italic, 4:Script  
plaspect(1.0);
xlabel("X-Axis");
ylabel("Y-Axis");
plgrid();
pltitle ("Plot2d");
plot(<< [x,sin(x)]; cx >>);

pause();




3次元グラフ: plmesh

x1 = -2*pi:2*pi:pi*4/39;
y1 = -2*pi:2*pi:pi*4/39;
z1 = zeros (x1.n, y1.n);

for (i in 1:x1.n)
{
  for(j in 1:y1.n)
  {
    z1[i;j] = sin(y1[j])*sin(x1[i])/y1[j]/x1[i];
  }
}

# Now create some plots

_plscolbg(255,255,255); 
plscol0(1,0,0,128); # 1:軸の色番号 
plscol0(2,0,240,0); # 1:表面の色番号 
plwin_init(0,0,512,384,1,1); 
plsfile("plot3d.ps");  
#plstart (1,1,"psc");  
plstart (1,1,"xwin");

plfont(2); # 1: Default,  2:Roman, 3:Italic, 4:Script  
plaspect(1.0);
xlabel("X-Axis");
ylabel("Y-Axis");
zlabel("Z-Axis");
plgrid();
plaz(60);
plalt(30);
pltitle ("Plot3d");
plmesh (<< x = x1; y = y1; z = z1 >>);
pause();




等高線図: plcont

x1 = -2*pi:2*pi:pi*4/39;
y1 = -2*pi:2*pi:pi*4/39;
z1 = zeros (x1.n, y1.n);

for (i in 1:x1.n)
{
  for(j in 1:y1.n)
  {
    z1[i;j] = sin(y1[j])*sin(x1[i])/y1[j]/x1[i];
  }
}

_plscolbg(255,255,255); 
plscol0(1,0,0,128); # 1:軸の色番号 
plwin_init(0,0,512,384,1,1); 
plsfile("contour.ps");  
# plstart (1,1,"psc");  
plstart (1,1,"xwin");

plfont(3); # 1: Default,  2:Roman, 3:Italic, 4:Script  
plaspect(1.0);
xlabel("X-Axis");
ylabel("Y-Axis");
zlabel("Z-Axis");
plgrid();
pltitle ("Contour Plot");
plcont (<< x = x1; y = y1; z = z1 >>);
pause();




x

マルチプロット: plstart(n,m,DEVICE)

cx=readm("cos.dat");
x = (-2*pi:2*pi:0.1*pi)';
x1 = -2*pi:2*pi:pi*4/29;
y1 = -2*pi:2*pi:pi*4/29;
z1 = zeros (x1.n, y1.n);

for (i in 1:x1.n)
{
  for(j in 1:y1.n)
  {
    z1[i;j] = sin(y1[j])*sin(x1[i])/y1[j]/x1[i];
  }
}

_plscolbg(255,255,255); 
plscol0(1,0,0,64); # 1:軸の色番号 
plscol0(2,240,0,0); # 1:表面の色番号 
plscol0(3,0,240,0); # 1:表面の色番号 
plwin_init(0,0,512,384,1,1); 
plsfile("multi.ps");  
#plstart (2,2,"psc");  
plstart (2,2,"xwin");

# plot2d
plfont(1); # 1: Default,  2:Roman, 3:Italic, 4:Script  
pltitle ("Plot2d");
xlabel("X-Axis");
ylabel("Y-Axis");
plaspect(1.0);
plot(<< [x,sin(x)]; cx >>);

# plot3d
plfont(2); # 1: Default,  2:Roman, 3:Italic, 4:Script  
pltitle ("Plot3d");
xlabel("X-Axis");
ylabel("Y-Axis");
plaz(60);
plalt(30);
plmesh (<< x = x1; y = y1; z = z1 >>);

# contour
plfont(3); # 1: Default,  2:Roman, 3:Italic, 4:Script  
pltitle ("Contour Plot");
xlabel("X-Axis");
ylabel("Y-Axis");
plcont (<< x = x1; y = y1; z = z1 >>);

# plot3d shaded
# plsh3d が使えるパッチをあてた場合
plfont(1); # 1: Default,  2:Roman, 3:Italic, 4:Script  
pltitle ("Shaded Surf");
xlabel("X-Axis");
ylabel("Y-Axis");
plaz(60);
plalt(30);
plotsh3 (<< x = x1; y = y1; z = z1 >>);

pause();