Här är en liten provkarta på vad man kan göra. När du testat lite av detta kan du själv rita egna figurer. Vi börjar med att inkludera programpaketet plots > with(plots): Warning, the name changecoords has been redefined Om du inte vill se hjälptexterna för plot så hoppa över nästa två rader > ?plot; > ?plot[options]; Nu ritar vi kurvorna i övning 1.1abc > plot(x^2,x=-2..2); > plot(3*x^2,x=-2..2,color=green); > plot(3*(x-1)^2,x=-1..3,scaling=constrained); Man kan definiera kurvorna först och sedan rita dem med display. Observera kolon efter definitionerna. > upp:=plot(sqrt(x/3),x=0..2): > ned:=plot(-sqrt(x/3),x=0..2): > display({upp,ned}); Med implicitplot klarar vi även övning 1.2 > a:=implicitplot(x^2/4+y^2/9=1,x=-2..2,y=-3..3,color=red): > b:=implicitplot(4*x^2+9*y^2=36,x=-3..3,y=-2..2,color=yellow): > c:=implicitplot(x^2+y^2=4,x=-2..2,y=-2..2,color=blue): > d:=implicitplot((x-1)^2/4+(y-2)^2/9=1,x=-1..3,y=-1..5,color=green): > display({a,b,c,d}); Här kommer övning 1.3 > a:=implicitplot(x^2/4-y^2/9=1,x=-4..4,y=-6..6,color=red): > b:=implicitplot(x^2/4-y^2/9=-1,x=-4..4,y=-6..6,color=yellow): > asymptot1:=plot(3*x/2,x=-4..4,color=green): > asymptot2:=plot(-3*x/2,x=-4..4,color=green): > display({a,b,asymptot1,asymptot2}); övning 1.24 > a:=plot([t^2,t+1,t=-1.2..1.2],color=blue): > b:=implicitplot(5*x^2+5*x*y+3*y^2-8*x-6*y+3=0,x=-2..2,y=-2..2,numpoints=1000): > display({a,b}); Nu skall vi rita tredimensionellt med plot3d. övning 1.17a > plot3d(sqrt(x^2+y^2),x=-1..1,y=-1..1); När bilden syns kan du tex välja constrained under projections, patch and contour under style och boxed under axes. Det blir snyggare med cylinderplot. > cylinderplot(z,theta=0..2*Pi,z=0..1); Vill man bara ha nivåkurvor använder man contourplot. övning 1.17e > contourplot(sqrt(1-y^2),x=-2..2,y=-1..1,scaling=constrained,axes=boxed); men det blir snyggare med hela > plot3d(sqrt(1-y^2),x=-2..2,y=-1..1,scaling=constrained,axes=boxed,style=patchcontour); > Vi provar även att rita nivåytor. övning 1.34 med k=0. > k:=0: > implicitplot3d(x^2+y^2-z^2-1=k,x=-2..2,y=-2..2,z=-2..2); Samma yta med cylinderplot > cylinderplot(sqrt(z^2+1+k),theta=0..2*Pi,z=-2..2,scaling=constrained,axes=boxed,style=patchcontour,orientation=[-30,80]); Man kan rita två ytor isamma figur. övning 1.35 > yta1:=plot3d(5-x-y,x=1..3,y=2..4): > yta2:=implicitplot3d(x^2-2*x+y^2-4*y+z^2+2*z+3=0,x=-1..3,y=0..4,z=-3..1): > display3d({yta1,yta2},orientation=[-70,80]); > Vi avslutar med ett par gränsvärdesuppgifter. I övning 1.25d får vi olika värden längs olika linjer. > plot3d((x^2+2*y^2)/(2*x^2+y^2),x=-1..1,y=-1..1,orientation=[50,30],style=patchcontour,axes=framed); men i 1.25e blir gränsvärdet noll. > plot3d((x^3-x^2*y)/(x^2+y^2+x*y),x=-1..1,y=-1..1,orientation=[120,60],style=patch,axes=normal); Man ser också tydligt skillnaden mellan 1.28d där gränsvardet blir noll > plot3d(x*y*exp(-x^2-y^2),x=-4..4,y=-4..4,orientation=[-50,70],style=patch,axes=framed); och 1.28e där funktionsvärdena inte närmar sig något värde då x^2+y^2 blir stort.. > plot3d(x*y*exp(-(x+y)^2),x=-4..4,y=-4..4,orientation=[-50,70],style=patch,axes=framed); > > > > > > > > > > > > > >