IA Guide › GeoGebra Guide

GeoGebra Guide for the IB Maths IA

Plot functions, fit curves to data, explore parameters with sliders, and export publication-quality graphs.

GeoGebra is free and runs in a browser. Go to geogebra.org/classic for the full desktop-style app, or geogebra.org/graphing for a clean graphing-only view. No account needed. Your work can be saved and shared via a link - include it in your bibliography.
Part 1

The Interface & Plotting Functions

1 Entering Functions

Type directly into the Input Bar at the bottom of the screen (Classic) or the entry field on the left (Graphing). GeoGebra uses standard mathematical notation - the table below covers the most common IA inputs.

What you wantType in GeoGebra
Quadratic y = 2x² − 3x + 1f(x) = 2x^2 - 3x + 1
Exponential y = 3e^(0.4x)f(x) = 3 * e^(0.4x)
Natural log y = ln(x)f(x) = ln(x)
Trig function y = 2sin(3x)f(x) = 2sin(3x)
Logistic curvef(x) = L / (1 + e^(-k*(x - x0)))
Piecewise functionf(x) = If(x < 2, x^2, 2x - 1)
Parametric curveCurve(cos(t), sin(t), t, 0, 2pi)
Derivative of ff'(x) or Derivative(f)
Integral from a to bIntegral(f, a, b)
Vertical asymptote at x = 2x = 2
Name your functions. Type f(x) = ... rather than just the expression. This lets you reference the function later (e.g. f'(x) for the derivative, or f(3) to evaluate at a point) and labels it cleanly in the legend.

2 Customising Graph Appearance

Right-click any object in GeoGebra → Object Properties (or click the coloured dot next to it in the Algebra panel) to change colour, line thickness, line style, and label. For IA graphs:

Axis labels and scale

Right-click the graphics area → Graphics Settings → set axis labels with units (e.g. "Time (s)", "Temperature (°C)"). Tick "Show axes" and set a sensible scale using the xMin, xMax fields. Hide unnecessary gridlines for a clean look.

Adding a title

Insert a text label: type Text("My graph title") in the input bar, then drag it into position. Alternatively, add the title in your IA document below the exported image as a proper figure caption - this is cleaner for word-processed submissions.

Showing key points

Use Root(f) to find x-intercepts, Extremum(f) for turning points, and Intersect(f, g) for intersection points. These create labelled points on the graph automatically - copy the coordinates into your IA working.

Exporting

Menu → Download as → PNG. Set resolution to at least 300 dpi for print quality. Alternatively, use Share → Export Image in the browser version. Paste the PNG into your document and add a figure number and caption below.

Part 2

Sliders & Parameter Exploration

Sliders let you vary a parameter interactively and see how the function changes - a powerful tool for the Reflection criterion, where you discuss the effect of changing model assumptions.

1 Creating a Slider

1
Type a parameter name in the input bar

Type just a = 1 and press Enter. GeoGebra creates a slider for a automatically with a default range. The slider appears in the graphics view.

2
Set the slider range

Right-click the slider → Object Properties → Slider tab. Set Min, Max, and Increment to values appropriate for your model. For a growth rate parameter you might use min = 0, max = 2, increment = 0.01.

3
Use the parameter in your function

Now type f(x) = a * e^(b*x) (creating a second slider b the same way). Drag the sliders to explore how each parameter affects the curve shape.

4
Record and discuss in your IA

Take screenshots at two or three distinct parameter values. In your write-up, explain what each parameter controls mathematically: "Increasing a stretches the curve vertically, raising the initial value. Increasing b steepens the growth rate, as b is the coefficient in the exponent."

Criterion D (Reflection) opportunity. Slider exploration is one of the best ways to earn full marks here. After fitting your model, show what happens when you vary a parameter by ±20% and discuss what this means in context: "If the carrying capacity K were reduced by 20%, the model predicts the population would plateau 12 years earlier - highlighting the sensitivity of long-term projections to this assumption."
Part 3

Regression & Data Fitting

GeoGebra can fit regression curves directly to a dataset - useful if you want a visual fit alongside the algebraic one you calculate in Sheets.

1 Entering a Dataset and Fitting a Curve

1
Enter your data as a list of points

In the input bar, type: L = {(1, 3.2), (2, 5.1), (3, 8.4), (4, 13.9)} (replace with your actual values). GeoGebra plots all points instantly.

2
Fit a regression curve

Use one of GeoGebra's built-in fit commands on your list L:

FitLine(L) - least-squares linear
FitPoly(L, 2) - quadratic (degree 2)
FitPoly(L, 3) - cubic
FitExp(L) - exponential y = ae^(bx)
FitLog(L) - logarithmic
FitPow(L) - power y = ax^b
FitLogistic(L) - logistic (S-curve)

3
Read off the equation

The fitted curve appears on the graph and its equation shows in the Algebra panel on the left. Copy the exact coefficients into your IA - these are full-precision values, not the rounded ones shown on chart labels.

4
Calculate R² manually

GeoGebra doesn't display R² automatically for all fit types. Calculate it in Sheets using =RSQ() on the same data, or type in GeoGebra: RSquare(L, f) where f is your fitted function name.

Cross-check with Google Sheets. Use GeoGebra for the visual graph and Sheets for the numerical coefficients and R². Having both tools corroborate each other strengthens your mathematical communication - mention in your IA that both methods were used.
Part 4

Calculus & Geometry Tools

1 Calculus in GeoGebra

OperationGeoGebra inputWhat it produces
Derivativef'(x) or Derivative(f)Plots f′(x) as a new function
Second derivativef''(x)Plots f″(x)
Definite integralIntegral(f, 1, 4)Shades the area and returns the value
Turning pointsExtremum(f, -5, 5)Plots labelled local maxima/minima
Inflection pointsInflectionPoint(f)Plots labelled inflection points
Tangent at x = aTangent(a, f)Draws the tangent line at that point
Normal at x = aPerpendicularLine((a, f(a)), f)Draws the normal line

2 3D Geometry (GeoGebra 3D)

Go to geogebra.org/3d for the 3D app. This is useful for IAs involving volumes of revolution, 3D vectors, or geometric solids.

What you want3D input
Surface z = f(x,y)f(x,y) = x^2 + y^2
Volume of revolution around x-axisSurface(f(x)*cos(t), f(x)*sin(t), x, 0, pi, t, 0, 2pi)
Sphere centre O, radius rSphere(O, r)
Plane through 3 pointsPlane(A, B, C)
Vector from A to Bv = B - A
Dot productu * v
Cross productCross(u, v)
Part 5

Exporting & Sharing for the IA

1
Export as PNG (recommended)

Menu () → Download as → PNG Image. In the dialog, set scale to 3× or higher for a sharp image that won't pixelate when resized in your document.

2
Share via link

Click Share (the icon with an arrow) → copy the link. Add this to your bibliography as: GeoGebra construction - [Your IA Title]. Available at: [link]. Accessed: [date]. This lets the examiner interact with your model.

3
Caption and number every exported graph

Paste the PNG into your IA document and add a caption immediately below: Figure 3: GeoGebra plot of logistic growth model f(x) = 500/(1+e^(-0.4(x-8))) fitted to population data. R² = 0.98. Reference this figure number in your prose.

Avoid screenshots of the full browser window. Export directly as PNG so the graph fills the image without browser toolbars or menus. A cropped, clean graph looks significantly more professional and earns better Criterion B marks.

More IA tools

Use the full guide alongside this one to plan, write, and polish your exploration.

Related IA guides