Plot3DE

Plot3DE is a small package that makes only a few changes to the usual Plot3D command. There is an option for solids of revolution, keywords for viewpoint selection, and plotting of multiple functions of two variables. Plot3DE is looking to grow and become a comprehensive graphics package like PlotE.

Plot3DE[y == Sqrt[x],{0,4},Revolution->x,std];

Plot3DE[y == Sqrt[x],{0,2},Revolution->y,zxy,
BoxRatios->{2,1,1}];

Plot3DE[{y == Sqrt[x],y == x^2},{0,1},Revolution->{x,Pi,2Pi},
zxy,BoxRatios -> {1,2,1}];

Plot3DE[x + y,x^2 + y^2,{-2,2},{-2,2},std];

Ad

The following three examples of PlotE were used in an advertisement in The Mathematica Journal.

plot[sin[x]/x,tan[x]/x,{-pi,pi},{-2,2},same,thick];

Plot[0,Sin[x]/6,Sin[x]/3,Sin[x]/2,{0,Pi},{0,1},
	Black,Fill[Red,Orange,Yellow],
	Polygon[{Pi/3,0.6},{2Pi/3,0.6},{Pi/2,1},
	Fill,Green,Edges,Blue,Dots,Magenta]
];

Plot[4x^2+9y^2=36,{-3,3},{-2,2},Frame,
Grid[{0.5,0.5},Fill[4x^2+9y^2=36]]];

Gallery

Here are a few examples of PlotE in practice, as you might use it to create graphics for illustration

back = 
Plot[{t,0,2Pi},{y,-25,25},Field[12 Sin[t]],Hide];
answ = Euler[12 Sin[x],{0,0},0.5,12];
Plot[answ,{t,0,2Pi},{y,-25,25},Join,back];

Plot[y^2,{y,-2,2},Same,Ticks->None,
	Point[{1,0},Red,"F",Above,"(p,0}",Below],
	Point[{2,Sqrt[2]},Red,"(x1,y1)",Above,"P",Below],
	Line[{1,0},{2,Sqrt[2]},Red],
	Line[{2,Sqrt[2]},{4,Sqrt[2]},Red];
]

Plot[4-x^2/2,{-1,2},{2,4.5},Axes->None,
	Point[-0.5,"(a,f(a))",Left,Above],
	Point[1.5,"(b,f(b))",Left,Below],
	Line[-0.5,1.5,Dotted,Blue],
	Tangent[0.5,Dots,"(c,f(c))",Above,Right]
];

Plot[x^3+x-1,{x,0,1},
	Point[{0.2,0},Green,"x0",Above],
	Line[{0.2,0},0.2,Green,Dotted],
	Point[0.2,Red,"(x0,f(x0))",Below,Right],
	Line[0.2,{0.90714,0},Red,"slope = f'(x0)",Below,Right],
	Point[{0.90714,0},Blue,"x1",Above]
];

Define[f[x] = x - 1/2 x^2,L[x] = f[x0] + f'[x0](x - x0)];
x0 = 0.5; x1 = 1.0;
Plot[f[x],{0,2},{-0.1,0.7},Same,Ticks->None,
	Tangent[x0],
	Point[{x1,L[x1]},Magenta,"(x1,L(x1))"],
	Lines->{{{x1,f[x0]},Red},{{x1,f[x1]},Blue},
		{{x1,L[x1]},Magenta},Horizontal,Dotted,Length[1]},
	Point[x0,Red,"(x0,f(x0))",Left,XLine,Dotted],
	Point[x1,"(x1,f(x1))",XLine,Dotted],
	Point[{x0,0},Red,"x0",Below],
	Point[{x1,0},Blue,"x1",Below]
];