Home|Make a Graph|Read the Guide

Bug Fix (June 29, 2021)

  • Fixed a bug that prevented the grid from displaying for certain settings of the viewing window

The Big Update (June 18, 2021)

This update comes later than I'd hoped, but it comes with some major improvements, many of which were requested by users.

  • By popular demand, I have restored full manual control over the spacing of grid lines and labels. The automatic controls were sometimes as convenient as they were intended to be, but not always. There were also a few edge cases (especially with trigonometric graphs) that made people want labels configured differently. Four numeric settings in the Grid panel now give you full control over the existence and spacing of lines and labels. You can leave any or all of them blank if you don’t want the lines or labels on that axis.
  • I’ve made it easier to drag the captions, annotations, and labels exactly where you want them. You can now see an outline of the texts as you drag them to help with positioning. Also, GraphFree does a better job of retaining your changes to the texts' positions when you modify the graph.
  • You can now enter a much wider variety of special characters in captions, legends, and annotations. Instead of buttons letting you copy and paste a few selected characters, you can now enter HTML entities for a wide variety of special characters, including Greek letters, mathematical symbols, and arrows. More information is given in the “Special Characters in Text” section of this guide.
  • I added a transparent background option. It’s found in the General Appearance & Accessibility panel at the bottom.
  • The new General Appearance & Accessibility panel also contains settings to change the text sizes and line widths.
  • Annotations are back to being entered in separate boxes instead of a single box with semicolon separators. I changed this because the HTML entities that are now supported in the annotations contain their own semicolons, and using semicolons for two different purposes in a single expression is just confusing.
  • Though you no longer use semicolons to separate annotations, you now must use semicolons to separate ordered pairs, asymptotes, and intervals. (The on-screen examples will remind you.) This change prevents GraphFree from parsing some expressions incorrectly.
  • Collapsed plot panels now display a reminder of your entries in that panel, so you can declutter the workspace and still see what is entered for each plot.
  • I’m working on making GraphFree run faster. GraphFree does most things pretty fast, and this update should improve some situations that hadn’t been as snappy as I would like. Still, it’s a work in progress.
  • I’ve changed the arrows at the ends of functions from solid triangles to simple v-shaped lines. I doubt that everyone will agree on which style is better. But infinite intervals on the number line look much better in the new style, so I used it across the board.
  • I added an open circle to the possible symbols in XY Scatter plots.
  • I fixed a bug that sometimes made stray arrows appear in the graph’s margins.
  • I fixed a bug in the Cartesian (Trig) grid type that would cause fractions that GraphFree didn't recognize to be displayed as the wrong fractions. Fractions not recognized by GraphFree’s automatic trig labeling are now displayed as decimal approximations instead.

Entering Functions

The new GraphFree is designed for convenient keyboard use, making data entry faster in most situations. If there’s a button for it on a traditional calculator, there’s probably a way to type it now.

Don’t get hung up about whether or not to include spaces. They’re included in some of the examples to make them more readable, but they’re never required.

SituationWhat You Can Type
Exponents2^5, 3^(x+2), x^-3
Square rootsqrt(x + 2)
Mathematical constants e and pipi, e, 5pi, e^x
Scientific notation, e.g., 2 × 1062E6, 4E-5
Be sure to use a capital E!
(x + 3)(x + 2)(x + 3)(x + 2)
No, you don’t need the multiplication sign.
Logarithmslog(1000), ln(e)
Log with different bases, e.g., log2xln(x)/ln(2)
(using the change of base formula)
sin2xsin^2 (x)
Of course, (sin(x))^2 still works if you’re used to those other calculators.

Complete Function List

CategoryAvailable Functions
Basic Math & Algebraabs (absolute value), sqrt (square root)
Logarithmicln (natural log) and log (base 10)
Trigonometricsin, cos, tan, cot, sec, csc
Inverse Trigonometricarcsin, arccos, arctan, arccot, arcsec, arccsc
Hyperbolicsinh, cosh, tanh, coth, sech, csch
Inverse Hyperbolicarcsinh, arccosh, arctanh, arccoth, arcsech, arccsch

Graphing Piecewise Functions

You may express the conditions of a piecewise function using either inequalities or interval notation. You can express infinite intervals in interval notation using inf for infinity.

How to create a piecewise graph

Circles, Ellipses, Hyperbolas, Etc.

To graph conic sections, select the Implicit plot type and enter the full equation, equals sign and all. If you’re on a slow computer, be aware that the implicit plot type might take a little longer to run, especially if you set large values for the plot width and height.

Implicit plot examples

Vertical Lines

If you want a dashed vertical line for an asymptote, enter the equation (e.g., x = 4) with the Asymptote plot type. You can even enter multiple asymptotes at once.

If you want a solid vertical line instead, enter the equation in the Implicit plot type. In the implicit plot type, however, you can enter only one equation in each plot.

How to plot vertical lines

The Cartesian (Trig) Grid

This grid type is perfect when your relevant x-values will be expressed in terms of π. With the Cartesian (Trig) grid type, you enter the x-bounds of your grid in terms of π, and grid labels for the common fractions of π will display as exact values (e.g., π/6) instead of decimal approximations. If the spacing between labels does not have a commonly used denominator, the label will still be expressed in terms of π, but using decimal approximations instead of exact fractions. GraphFree considers integers and fractions with denominators of 2, 3, 4, 6, 8, 12, 16, 24, and 48 to be commonly used fractions that can be displayed as exact values.

The Cartesian (Trig) grid type

Polygons & Polylines

The Polyline plot type has two quite different uses. One is to create polygons such as those that might be used in coorinate geometry questions. For this use, you will usually enable the Connect Endpoints option

Without the endpoints connected, the Polyline plot is great for creating some graphs that would be annoying to assemble as piecewise functions. Instead of specifying equations and intervals of the various segments, simply specify the points you wish to connect.

When you enter the ordered pairs, you really do need the parentheses as well as the semicolons between the pairs.

Polygon and motion graphs

Special Characters in Text

Special characters are supported in axis labels, the caption, legend texts, and annotations.

The buttons to copy and paste certain special characters have been replaced with support for HTML entities. These may not be quite as convenient as the buttons, but they allow you to use a much wider variety of special characters than you could before.

HTML entities are text sequences that begin with an ampersand and end with a semicolon. For example, the HTML entity for π is π. There are HTML entities for Greek letters, mathematical symbols, arrows, and much more. You can see an offsite list of the available entities here. (I can‘t guarantee that every entity someone might wish to use will be available in the font GraphFree uses, but most commonly used mathematical symbols are.)

Here are some more examples:

Desired TextHow to Type It
Δm, in μmΔm, in μm
↓ relative maximum↓ relative maximum
m∠A = 60°m∠A = 60°
f″(x) > 0 where f′(x) is increasing.f″(x) > 0 where f′(x) is increasing.
√((x + 1)/x) → 1 as x → ∞√((x + 1)/x) → 1 as x → ∞

It may help to notice that in, the entities for Greek capital letters are themselves capitalized, while the entities for lower case Greek letters are not. For example, the entity Σ makes the capital Σ used for summation, while σ makes the lower case σ used for standard deviation.

There is also a pattern to the arrow entities. They are →, ←, ↑, and ↓, where the initial letters r, l, u, and d stand for right, left, up, and down.

Caption, Legend, & Annotations

The caption, or title, appears below the graph.

The legend explains the meaning of different lines or scatter plot symbols. It appears either to the right of the graph or below it, depending on the width of the graph.

Annotations are used for any other notes you wish to add. You can use the mouse to drag them anywhere on the graph you wish. (For that matter, you can move the captions and legends too if you feel the need.)

You can include a variety of mathematical symbols and other special charaacters using HTML entities, as described in the "Special Chaaracters in Text" section of this guide.

Caption, legend, and annotation

Shading a Region

To shade a region of your graph specify an ordered pair inside the region you wish to shade. To shade multiple regions, enter a point inside each region, separated by semicolons.

Make sure you pick points that aren't too close to the edges of your region (or to the edge of the viewing window). If you enter points too close to the boundaries of a region, GraphFree may mistakenly think the region is already shaded and therefore not shade it “again.”

Curve shading examples

Asymptotes

You can use the Asymptote plot type to enter the equations of multiple horizontal, vertical, and/or slant asymptotes all in one line. The lines will appear dashed as is conventional for asymptotes. (If you don’t want dashed lines, used the regular Function plot type instead, or the Implicit plot type for vertical asymptotes.)

Since this plot type is designed specifically for asymptotes, you need to write the equations of the asymptotes in the “normal” way, which means x = c, y = c, and y = mx + b. Alternate forms usually won’t work.

Asymptote examples

The Number Line

To plot on a number line, select Number Line as the grid type in the Axes & Grid panel. The plot panels will now contain the option for the Number Line plot instead of the other plot types.

To enter data in a number line plot, you may enter multiple points and/or intervals separated by semicolons. Just as in the piecewise plot, you may use interval notation or inequalities to express your intervals. In interval notation, you may use inf to express an infinite interval.

Number line example

Trouble Pasting a Graph?

First, Windows users will probably not be able to copy and paste graphs with transparent backgrounds. This is a limitation of Windows itself. Windows users will need to save images with transparent background to disk in order to insert them into other programs.

For images with the normal white background, the usual procedure—right-click, copy, then paste into your program—works exactly as expected in most programs. A few programs, however, need a little help to handle the pasting properly.

Microsoft Word can be one of those programs. If pasting into Word doesn’t seem to work, use the Paste Special command instead of the normal paste, and then select Device Independent Bitmap.

Fix pasting problem with Paste Special

Chopped Off at the Edge?

GraphFree is programmed to keep your graph from extending awkwardly beyond the edge of the grid and into the margins. Usually, that’s helpful. But once in a while you have a graph that just clips the edge of your viewing window, and that clipping effect looks a little off. Fortunately, you can compensate for it by extending the viewing window just a tiny bit.

Extend the viewing window a bit to fix clipped edges.