Download software

The Winplot software consists of a single program, winplot.exe. Follow these instructions to download and install the program on your home computer:

  1. Create a directory on your C drive and name it "winplot".
  2. Left-click on this icon:  to connect to the Winplot website.
  3. Click on the Winplot link at the top of the Winplot website.
  4. Download and save the file wp32z.exe into your new directory C:\winplot.
  5. Open Windows Explorer or My Computer, navigate to your C:\winplot directory, and double-click your downloaded file wp32z.exe. Windows XP will unzip this file; unzip it into your C:\winplot directory. (With earlier versions of Windows you might have to use an unzipping program.)
  6. Your C:\winplot directory will now contain a program winplot.exe, represented by a yellow icon. Drag this icon to your desktop.
  7. Double click the yellow Winplot icon on your desktop to start the program. You may have to resize the window to your liking. Read the instructions below to learn how to draw graphs.


Winplot is a graphing program written by Richard Parris, a teacher at Phillips Exeter Academy in Exeter, New Hampshire. It can be downloaded from the website

Although the program is free, it is of top quality and easy to use. These instructions expand on those found in the program's help menus; they discuss some techniques of two-dimensional plotting, useful in an algebra or calculus class. It is assumed that the reader has already installed the program in Microsoft Windows, and is familiar with the basic workings of that operating system. (These instructions apply to the August 22, 2008, version of Winplot.)

Basic graphing procedure

Here is a step-by-step procedure for getting a quick preliminary graph of an equation in two variables. For most equations you will probably want to make later refinements to the graph.

  1. Double-click the yellow Winplot icon to begin the program.
  2. Click Window - 2-dim.
  3. Click Equa, then click
  1. Explicit for an equation of the form y = f(x),
  2. Parametric for parametric equations x = f(t), y = g(t),
  3. Implicit for a function defined implicitly by an equation involving x and y,
  4. Polar for an equation r = f(t) in polar coordinates (t represents the angle q).
  5. In the function window, type the formula for the function you want to graph. The remaining items in the window are optional. If you wish you can click color to choose the color of the graph. For explicit formulas, you may fill in low x and high x (or low t and high t) - the endpoints of the interval where the function is to be graphed. (For equations y = f(x) this is usually unnecessary, as normally there is no reason to restrict the graphing interval - but if you do fill in endpoints, you must check the lock interval box to activate them. For graphs in polar coordinates you will probably want to accept the default values of low t = 0, high t = 2p = 6.28318...). The pen width and plotting density boxes affect the thickness and density of the graph - usually there is no reason to fiddle with these. When you are finished with this window, click OK to draw the graph. Winplot will draw the graph in a window extending over the the x-interval [-5,5]. (See later instructions for changing this interval.) To make changes to the function you typed in, click it in the inventory window, then click edit and make the changes in the edit window. Click OK and the graph is modified accordingly.
  6. To draw another graph on the same screen, go back and repeat steps 3 & 4. Indeed, you can draw many graphs on the same screen. The inventory window lists all the functions you have already graphed. You can edit any of these by clicking its formula and then edit. To delete a function from the inventory, click it and then delete. If you click a function and next graph, the graph is erased but the function remains in the inventory - to bring back its graph, click the function and graph again. If you click a function in the inventory and then equa, the formula for the function appears in the top left corner of the graphing window. Repeating this maneuver removes the formula from the graphing window.
  7. If the inventory window gets in your way, use the mouse to move it, or to close it with the close button. To bring back a closed inventory window, click Equa - Inventory or type Control - i.

Typing equations

There are certain rules to follow when typing equations.

  1. Multiplication is denoted by *, and exponentiation by ^. Usually the multiplication sign is not needed. For example, 3x and 3*x mean the same. You can type in the square of x in three ways:

    x^2  ,  x*x  ,  xx .

    The notation xy means the product of x and y, and x/y the quotient. Instead of typing a decimal representation of p, you may just type pi. However, to multiply p and x, type pi*x but not pix. You may also type the base of the natural logarithms as e, rather than its decimal approximation.
  2. When typing functions, use parentheses to avoid ambiguity. For example, suppose you want to type the fraction with numerator x+2 and denominator x+3. If you type only x+2/x+3, Winplot will think you mean

    x + (2/x) + 3 ,

    because multiplications and divisions are performed before additions and subtractions. Instead you must use parentheses, typing

    (x+2)/(x+3) .

    (General rule : When unsure whether parentheses are needed, use them!)
  3. When typing a function with a name, be sure to use parentheses around the argument. For example, type sin(x) but not sin x. Similarly, type log(5x) but not log 5x. The function log is the base 10 logarithm, while ln is base e. Also, exp(x) means ex, but you may type also e^x. The function sqr(x) denotes the square root of x. The absolute value of x is typed as abs(x). Here is a list of some common functions Winplot recognizes :
sin cos tan csc sec cot
arcsin arccos arctan sinh cosh tanh
ln log exp sqr abs sgn
(To see more functions, click Equa - Library.) The n-th root of x is root(n,x); for example, root(3,x) denotes the cube root of x. Alternatively, you can type x^(1/3), but then the graph appears only for nonnegative values of x.

All trig functions work in radians. To make them work in degrees, use the constant deg, an abbreviation for p/180. For example, sin(x deg) will multiply x by p/180, to produce the graph of the sine of x when x is given in degrees.

Adjusting the graphing window

Winplot's initial graphing window extends from x = - 5 to x = + 5, with the x-axis and y-axis having the same scaling. In most cases you will want to make alterations to suit your particular graphing problem.

  1. You can specify precisely the four extremes of the graphing window. Click View - View to open the view menu, and check set corners. The boxes left and right refer to the x-values at the left and right of the graphing window, while down and up refer to the y-values at the bottom and top of this window. After specifying these, click apply and the window boundaries change to your new ones. Usually this procedure will cause some distortion in the graph, as the axes must be rescaled to conform to the new settings. If unhappy with your new settings, you can get back your previous ones by clicking View - Last window. To return to the original default settings for the graphing window, click View - Restore. (This option is sometimes a useful last resort when you have hopelessly messed up the scaling.)
  2. To specify the center and width of the graphing window, click View - View to open the view menu, and then check set center. Fill in the x-value (hori) and y-value (vert) you want for the center of the graphing window, and then the desired width of this window. Click apply to redraw the screen with these specifications.
  3. The set center option makes the scaling along the x and y axes the same; this is useful for example if you want true angles between curves, as when graphing perpendicular lines. But the set corners option is more flexible, and indeed even necessary for graphs whose x-values and y-values are of different orders of magnitude.
  4. You can zoom in on a graph with the page up key, and zoom out with page down. The four arrow keys move the center of the graphing window up or down, or left or right, as the arrows indicate.
  5. Sometimes a graph cannot be seen because it lies entirely outside the graphing window. A good way to find a graph hiding off the screen is to choose distant corners in the set corners menu. For example, setting left = - 20, right = 20, down = - 1000 and up = 1000 will probably locate most graphs you will ever want to plot. After locating a graph by this method you can revise the corners to focus on the region of interest. (You can also try zooming out until you find the graph.)

Labels and markings

Winplot can place useful labels, markings, and other descriptive information on a graph.

  1. The View - Grid dialog box controls the display of the coordinate system. Checking axes in this box displays both x and y axes - or only one of these, as you choose. Checking ticks creates tick marks - these are evenly spaced little marks appearing along the two axes. You can check arrows to place small arrows at the positive ends of the coordinates axes, you can check dots to place a grid of dots in the graphing window lining up with tick marks along the axes, and labels to label the axes. The interval boxes specify the distance between tick marks along the two axes. Checking scale places numbers beside tick marks to indicate the scaling, and the places box specifies the number of decimal places displayed in these numbers. (For an uncluttered graph you should probably enter 0 or 1 here, unless more precision is needed.) The number in the freq box controls how often tick marks are numbered; 1 numbers every tick mark, 2 every second tick mark, etc. A check mark in the pi box numbers the tick marks in terms of multiples of p. (To see actual Greek p symbols, click Misc - Fonts - Scale on axes and choose a symbol font; otherwise you might see another letter representing p. You might also have to click Misc - Fonts - Pi symbol and fill in the character code for p in that particular font; if you don't know the code, try 112 first.)
  2. Checking mark scale on axes in the grid dialog box places numbers indicating the scaling along the coordinate axes, while checking mark scale on border places these numbers along the left and bottom borders of the graphing window. (The latter option might be necessary if either coordinate axis does not appear in the graphing window.)
  3. To place rectangular grid lines on the graph, check rectangular and then the quadrants in which you want the grid. For a polar grid check polar sectors and fill in the desired number of sectors. Checking dotted gives dotted grids.
  4. You must check apply in the grid dialog box to activate any changes.
  5. You can insert text into the graphing window with help of the mouse. First make certain that Btns - Text is checked. Place the mouse pointer at the spot in the graphing window where you want to enter text, click the right mouse button to open an edit text box, and type there the desired text. You may click font to choose a font as well as its size, style, and color. Click OK and the text appears on the screen where you clicked the right mouse button. You can move this text around - just click it with the left mouse button and drag it anywhere you want. (You can also drag around any equations you insert from the inventory window.)
  6. The View - Axes menu allows you to set the color of the coordinate axes, as well as their thickness, and to relabel these axes with letters of your choosing.
  7. You can plot a single point with Winplot - this is useful in highlighting points of interest on a graph. Click Equa - Point, choose either (x,y) for Cartesian or (r,t) for polar, and enter the coordinates of the point. The dot size box controls the size of the point - different sizes might be optimal for different printers. To edit a point, click it in the inventory window.


You can print your graph, along with all labels, markings, and other embellishments that appear in the graphing window. Of course, your computer must be connected to a printer recognized by Windows.
  1. Click File - Format to open a print format window. In this window you specify the width in centimeters of the printed graph, and the vertical and horizontal offsets. A width of 15 or 16 centimeters pretty much takes up the whole width of a printed page. The horizontal and vertical offset numbers measure the distance form the upper left corner of the graphing window to the left of the page and top of the page, respectively. Setting these at about 2.5 centimeters will position the graph nicely at the upper left corner of the page. Check the frame image box to place a rectangular frame around your graph. Check color printer if your printer prints in color and you wish to do so. Click OK to record your print format settings.
  2. Click File - Print to open the Windows print window. As a graph takes up only one page, probably you will not need to change any of the default settings. Click OK to print your graph.
  3. Sometimes a graph might print too faintly because of a low printer ink supply or some other reason. You might remedy this problem by increasing the pen width number in the function edit window, or by clicking Misc - Thicken print.

File management

After working on a graph, you may want to save it before exiting Winplot; otherwise, you will have to retype everything if you want to look at it again.
  1. If you try to exit Winplot without saving your graph, the program will ask if you want to save it. Click Yes if you do, and type in the desired filename and choose the desired folder - then click Save to save the graph.
  2. You can save a graph also on your own initiative by clicking File - Save As. If working on a graph that has already been saved, you may click File - Save to save an updated version. To keep both old and new versions of a graph, click File - Save As and give the updated version a new name - the old version will be retained with the old name.
  3. To open a file that has been saved, click File - Open. Choose a folder and the desired file from that folder, and click Open. (If you want to open two files at once, you must open two graphing windows and open one file in each window. When you open a file in a window, any file already open in that window is closed.)
  4. You can delete files by opening Windows Explorer and navigating to the directory containing your Winplot files. Your two-dimensional graphing files end with the suffix .wp2. Select the ones you want to delete and click File - Delete.

Function information

Winplot can give useful information about functions, such as the location of zeros and extreme values. It can also create tables of values, and find points of intersection of different graphs.
  1. To locate the zeros of a function (i.e., the x-intercepts, where the graph crosses the x-axis), first graph the function. Then click One - Zeros to get an x-intercepts window. This window already lists a function from your inventory - click the down arrow to choose the function you want. Winplot gives the x-value of a zero of the function, marking it with a red arrow on the graph. Click next to move to successive zeros of the function. The program runs through the zeros from left to right and then starts over again on the left. This procedure is meant to locate all zeros in the graphing window - it does not locate zeros that may occur outside this window. You can specify the number of decimal places retained in the zeros by clicking Misc - Decimal places. After locating zeros of a function, you can see the list of zeros by clicking Misc - Data - Inspect.
  2. Locating the extreme values of a function (i.e., the relative high points and low points on the graph) is similar to locating the zeros. Click One - Extremes, and use the down arrow to select the function of your choice. Click repeatedly the next extreme of button to run through the extreme values. You have the option of clicking mark pt to place a point on the graph at an extreme point. The program finds only those extreme values whose x-coordinate appears within the domain of the graphing window. You can specify the number of decimal places by clicking Misc - Decimal Places. You may see the list of extreme values you found by clicking Misc - Data - Inspect.
  3. To create a table of values for a function, select the function in the inventory window and click table. To specify the low and high endpoints of the table, as well as the number of steps in the table, click Params on the table menu bar. It is best if the number of steps in the table divides nicely into the difference between the low and high points, so that you get terminating decimals as x-values in the table. To specify the number of decimal places in the table, click Misc - Decimal Places. You can print the table by clicking File - Print on the table menu bar.
  4. Click One - Slider to trace the graph of a function. Use the down arrow to choose a function to trace. Slide the scrollbar to move the cursor along the graph - corresponding x and y values change with the cursor. If you specify an x value of interest by entering it in the box, Winplot returns the corresponding y-value.
  5. To locate where two different graphs intersect, click Two - Intersections and then the down arrows to select the two functions of interest from the inventory. Click next intersection to locate succeeding points of intersection; you may mark these points as you go. The program locates only points of intersection visible in the graphing window. You can see the list of intersection points you found by clicking Misc - Data - Inspect. Click Misc - Decimal Places to specify the desired number of decimal places.

Numerical integration

Winplot uses numerical methods to estimate definite integrals. To get an approximation of a definite integral of a function of one variable, first graph the function on the desired interval of integration; then follow these steps.
  1. Click One - Measurement - Integrate f(x) dx to open the integration window. Click the down arrow to select from the inventory list the function you want to integrate.
  2. Fill in the lower and upper limits of integration. In subintervals enter the number of subintervals into which you wish to divide the interval of integration. (The default is 1000 - in general you get better approximations with more subintervals, but round-off errors and time considerations make it counterproductive to enter too large a number.)
  3. Check the numerical integration methods you wish Winplot to employ. (Probably the parabolic method will give the best approximation, but that is not always the case.) Check overlay if you want Winplot to draw approximating rectangles (or trapezoids or parabolas, depending on the method) in the region whose area will be approximated by the integration. If the number of subintervals is large, these figures blend together and the visual effect is that the region is shaded.
  4. Finally click definite to view the approximations to the integral under the methods chosen. Remember that these are only approximations - but they can be quite accurate if the number of subintervals is large and the function not too badly behaved.

Differential equations

Winplot can draw slope fields for a first order ordinary differential equation of the form

dy/dx = f(x,y) .

It can also solve numerically initial value problems for the equation.
  1. Perform the sequence of clicks Window - 2-dim - Equa - Differential - dy/dx to open the differential equation dialog box.
  2. Type the formula for f(x,y) in the box. Make sure that slopes is checked. You can adjust the lengths and number of rows of slope segments by changing the numbers in the corresponding boxes - you can also alter the pen widths of these segments. Click OK to view the slope field.
  3. You may adjust the graphing window and add labels and markings, as already described for the graphing of equations. You may also superimpose on the slope field the graphs of one or more equations. (It is informative to graph solutions of the ordinary differential equation on top of the slope field, to see how the solution curves follow the field.)
  4. To solve an initial value problem numerically, first graph the slope fields as described above, and next click One - dy/dx trajectory to open the initial value problem dialog box. In this box enter the initial x and y values and the step size h. Check either the Euler, modified Euler, or Runge-Kutta circle, depending on the numerical method you wish to use. Finally, click draw to see a graph of the approximate solution. The approximate solution can be quite accurate if a small step size is used - but excessively small step sizes are accompanied by long wait times, and produce diminishing accuracy because of round-off errors.
  5. To see a table of values for the approximate solution, click table in the initial value problem dialog box. You may specify the number of steps in the table - starting at the initial x-value and increasing in increments of h. If you are interested in the value of the solution at a particular value of x, scroll through the table until you find this x-value. (You may have to increase the number of steps in the table to reach your point of interest.)
  6. You can use the mouse to quickly draw solution trajectories with different initial values but for the same differential equation. While the initial value problem dialog box is open, position the mouse cursor at an initial point on the screen and click the left mouse button; Winplot draws the solution trajectory beginning at that point. You can fill up the screen with trajectories by doing this at many initial points.