NEW FEATURES IN GEOGEBRA 4.0
Mike May, S.J.
Department of Mathematics and Computer Science, Saint Louis University
220 N Grand Blvd, St. Louis, MO, 63103
maymk@slu.edu
Overview  The reader will find it useful to have a copy of GeoGebra at hand while reading this paper. (Obtain from [1]). GeoGebra is a free, open source, cross platform program that can easily be used to construct demonstrations, visualizations, and exploration tools for courses in mathematics from algebra through calculus. The program allows the user to easily mix graphical and algebraic representations of objects. At ICTCM XX and XXII, we described how to use GeoGebra to create active web pages with embedded dynamic applets using the then current release, 3.0, and gave an introduction to new features in release 3.2. ([2] and [3]) This paper highlights a few of the new features that have been added to GeoGebra with release 4.0. A more complete listing of the description of the changes in release 4.0 can be found in the official release notes ([4]). The handouts for the ICTCM session ([5]) go into more detail about the new features. The reader will also find it useful to look at the other handouts that are available on a wiki developed for an online PREP workshop over GeoGebra ([6]). In section 1 we will look at changes to the interface. In section 2 we will look at changes in the features available for calculus. In section 3 we will look at changes for statistics. In section 4 we will look at the evolution of the philosophy of GeoGebra and the assumed method of use.
Section 1 – Interface changes
Many of the interface changes fall into the category of making GeoGebra much more user friendly. Noteworthy changes in the interface include the introduction of the style bar, and the introduction of the tool for copying visual style, the addition of a second graphics view, and the ability to control the arrangement of the views, the improvement of the autocompletion of commands, the revision of command help, and the palettes for use with the input bar, the easier control of options, and the setting of defaults for options, and the revisions of the text tool. In this section we focus on a subset of these features. More details on other items can be found at ([5]) the complete set of handouts mentioned above.
The Styling Bar – We start with the interface changes at the top of the main window. When we open GeoGebra we may see a number of views. In the picture below, there is an Algebra view, a Graphics view, and a Spreadsheet view. On the header bar for each view are three icons. The first icon is a triangle. It is a toggle switch that either hides or shows the styling bar. The second icon toggles whether the views are in the main GeoGebra window or in a separate window. The third icon allows you to hide a view.
When we toggle the styling bars to make them visible, we have different options in the style bar of each view. In the algebra view, the first icon controls whether or not auxiliary objects are show. (By default auxiliary objects are not shown.) The second icon controls whether the objects are sorted by class of object (free, dependent, and auxiliary) or by type of object (point, line, function, etc.). In the graphics view, the number of icons in the styling bar varies, depending on the type of object that is selected. When no object is selected, as in the picture below, there are toggle buttons to show or hide the axes and the grid, and a menu of options concerning whether or not items snap to or are fixed on the grid. From the spreadsheet styling bar, we are most interested in the first button, which is a toggle switch to show or hide a formula bar for the spreadsheet.
At this point we are most concerned with the styling bar for the graphics view. If I select an object, or select a tool to create an object, the list of icons in the styling bar changes to a set appropriate for that kind of object.
When a point is selected, we have menus to control the color, and shape and size of the point. We also have a menu for how we want the object to be labeled. When we select a line, the naming menu disappears, and the list of styles changes to one appropriate for lines. For circles and other regions, we have a menu to control the shading of the interior.
If we are making a complicated construction we want to help the viewer keep the objects organized by use of style. For example we may want to vertices of a triangle in one style and the midpoints in another style. One of the new tools from the toolbar menu lets you copy styles from one object to another.
Command completion input bar help  Next we move to interface changes at the bottom of the main window. If you start typing a GeoGebra command, (e.g., Cir as the start of Circle), a window pops up with a list of commands that will complete your typing.
As the picture above shows, the completion includes the syntax of the command. Often, a partial command can be completed in several ways, and a completed command may have several valid sets of input parameters. In the picture above there are several commands that complete Cir, and there are several Circle commands, since a circle can be defined by a center and radius, or by a center and a point of the circle, or by several other methods. Selecting a completion puts that command in the Input bar with the first parameter highlighted. The tab key will move to the next undefined parameter. There are also several new features to the right side of the input bar to help the user. A small button, marked by an α, within the bar, will bring up a palette of symbols that are commonly used, but are not on the standard keyboard. (The palette is displayed below.) A button that looks like an updown button, brings up a list of prior commands so they can be edited rather than having to retype. This is particularly useful when you want to make a series of very similar commands, as when you are changing only one input in a complicated command. Finally, there is a button at the far right to bring up an input help browser. As shown below the browser will let you scroll through a list of commands, organized by topic, and show the syntax of the chosen command.
The new Text Tool – The text tool has been entirely redone for GeoGebra 4.0. In looking at the new version of the tool, it is worthwhile to have an example to consider. In the picture below I have three sliders for the parameters a, b, and c. I also have a quadratic function using those parameters and a text describing the location of the roots.
The reader will notice that the text includes the quadratic formula both in terms of the generic parameters and in terms of the current values of the parameters. The new text tool allows the user to format the text in LaTeX, a sophisticated typesetting system, without requiring the user to learn LaTeX. As the pictures below show, the tool has an editing and a preview window. There are also a series of menus that allow you to call up the appropriate LaTeX structure and then to substitute in a value of your choice for the placeholders. One inserts objects to add in the current value of an object to the text.
You will notice that the object boxes allow not only object, but also computed expressions that are simplified before printing.
Section 2 – Calculus changes
With release 3.2, GeoGebra already did a pretty good job of covering the material in a typical first year calculus course. Marc Renault, from Shippensburg State University, used that release to create a fairly complete set of applets for the material covered in a first semester course ([7]). The changes for calculus can be characterized as filling in the gaps in order to make GeoGebra cover all the material in a typical first year calculus class, and making the presentation nicer, creating a better tool for looking at symbolic problems.
Changes in the Algebra Window and the underlying CAS – With release 4.0, the values in the algebra window are rendered in LaTeX, rather than in a text format. More importantly, functions, and the results of symbolic differentiation and integration also use exact algebraic expressions rather than rational approximations. In the pictures below we have the algebra windows for parallel computations in release 4.0 and 3.2. The new release gives the answers in a format similar to what we would want from students.
One of the “under the hood” changes with release 4.0 is a shift, from mathpiper to reduce, in the CAS package used. The net effect for the user is that GeoGebra will now find antiderivatives for almost any problem that would be given in a typical calculus class. There is also a broader collection of predefined functions, and some new commands that cover material typically in a first year calculus class:

The trig functions sec(x), csc(x) and cot(x) are now defined and can be differentiated symbolically.

The corresponding hyperbolic functions are also defined.

There is a PartialFractions command for rational functions.

There are now commands for Limit, LimitAbove, and LimitBelow.

The integral of 1/x is now ln(x) instead of ln(x).

The function erf(x) is defined so we can integrate exp(x^2).

The user can define functions of two variables and can find partial derivatives.

A ComplexRoot command finds the real and complex roots of a polynomial.
Inproved visualization – As mentioned above, release 4.0 allows the definition of functions of two variables. This fills the most noticeable gaps in GeoGebra’s coverage of material from a first year course in calculus, the ability to visualize vector fields, implicit curves, and numerical solutions to simple systems of differential equations. (In many textbooks, the use of Euler’s method is covered.) The picture below shows an applet ([8]), where a vector field is defined in terms of Dx and Dy, two functions of x and y. The SolveODE command is used to create numerically defined solution curves for the vector field. (It uses RungeKutta 4.) Coincidently, the applet illustrates several other new features of relase 4.0. There is a second graphics window, which in this case we have used as a control panel. Textboxes are available for providing text input to GeoGebra without using the input bar. Finally, the text boxes have scripts attached, so when a text is entered, the appropriate list of commands are executed, updating the picture.
Release 4.0 also allows the user to define implicitly define a curve by giving a polynomial relation of x and y. It should be noted that the SolveODE command can plot a curve for a more general relation f(x,y) by using the vector field (f_y, f_x).
The other notable improvement in visualization is with Riemann sums. In release 3.2 we had commands foe the lower, upper and trapezoidal sums. With release 4.0 we add a command for rectangular sums with the height taken at a specified point in each subinterval. This allows us to easily show the left hand, right hand, and midpoint rules.
Function Inspector  The Function Inspector is a new tool with release 4.0. It is designed for use with a file rather than as an applet. It allows the easy gathering of a lot of information about a function, either looking at information about an interval or about a set of points. The superimposed image below shows some of the data that can be gathered.
Section 3 – Probability and Statistics changes –
The statistics changes for release 4.0 reflect a change in the presumed method for using GeoGebra to teach statistics. The most interesting new features are only available form the spreadsheet view. Like the Function Inspector above, these features are designed for use with the application GeoGebra, and do not work in applet mode.
Spreadsheet Statistics – Clicking on the spreadsheet view shows a number of changes with release 4.0. As the picture below shows, the spreadsheet now has its own toolbar. The f(x) button on the styling bar toggles a formula bar similar to the one used on other spreadsheets. The tool bar has a move icon and three menus of tools.
The four icons in the toolbar can be described as the move or selection tool, a menu of tools for finding statistics with one, two, or three samples, a menu of tools for exporting data from the spreadsheet to the algebra view in a nice format, and a menu of tools for finding particular statistics for a single sample. We will focus on the tool for doing an analysis of a single sample.
Consider the example pictures below. Cells A1A9 are filled with random integers between 0 and 100. With that range of cells selected, we chose the toll for One Variable Analysis. It produced a pop up window with three subwindows giving different views of the data. The left hand side gives a list of summary statistics of the data. Other options allow us to see a Z or T test or estimate of the mean. The middle portion of the display shows the data. This section allows the user to remove individual values from being considered. The right hand side gives a visual representation of the data in the sample. The picture shows a stem and leaf plot. A histogram and a dot plot are among the other options for the representation.
The tool for regression analysis of a pair of samples constructs a best fitting curve for the data with the user given the choice of the kind of curve being fitted. The tool for analysis of multiple samples can either, give a side by side set of descriptive statistics for the samples, or it can do an ANOVA test on the samples, or do a pairwise comparison of Z or T tests. The fourth tool in this menu is a probability calculator, which gives a nice visualization of a variety of continuous and discreet probability distributions.
Probability in the Algebra and Graphics views – To give a simplified distinction, in statistics we start our computations with data, while in probability we start with formulas. As such, for statistics we expect to use the spreadsheet view where data is more easily entered and edited. Along with the new features in the spreadsheet view that allow the user to do statistics with data, a number of new features have been added to the algebra and graphics views to allow working with the formulas that arise in statistics. Obviously data can be exported from the spreadsheet as either a list of numbers or a list of points and there are commands to calculate all of the standard statistics from a list or sample. It should be noted that release 4.0 adds commands to compute variances and standard distributions using the rules for samples in addition to the commands that computed for populations.
More significantly, commands have been added to work with that standard probability distributions one might find in a yearlong course. Typically, each distribution has commands that allow you to define and plot the distribution as a function, define and plot the cumulative probability distribution, define and plot the inverse probability distributions, and to evaluate these distributions at a specified point.
Section 4  Changes in Philosophy of Use
As has been pointed out above, with release 4.0, GeoGebra has added a significant list of new features and we have highlighted a small subset of those features. It is worthwhile to notice ways that the current release marks a more philosophical shift in the assumed use of GeoGebra.
A first shift is from a unified GeoGebra application to be used in all settings to a suite of GeoGebra applications that are used in more particular settings. There is a splitting of a GeoGebra application for classroom use from a GeoGebra application for constructing lightweight applets. The shift is partly the result of increased size with added features. For release 2.7 an applet used a single jar file that was about 1 megabyte in size. For release 4.0 an applet uses 11 jar files that total almost 6 megabytes in size. Additionally, the previous two sections pointed out a number of very nice features that cannot be saved as part of an applet. If we look at the features that are being considered in the beta versions ([9]) of release 4.2 and 5.0, where a full CAS view, python scripting, and a 3D view will be added, it is clear that this trend will continue. Looking a bit down the development pipeline, work is underway to build a separate, lightweight version of GeoGebra ([10]) that will run on all platforms, using HTML5 rather than java, but will only support a subset of GeoGebra’s features. The shift from Java to HTML5 allows GeoGebra to be used on tablets and smartphones. GeoGebraWeb is currently in alpha release. GeoGebraPrim ([11]), a release for younger students, is another member of the family of applications. The planned addition of python to release 4.2 sets up the use of ggb files as fairly sophisticated applications.
A second shift has to do with the maturation of the spreadsheet view and the statistics tools. GeoGebra’s history connected geometry and algebra. It is now adding capabilities to work with data defined as a set of numbers. Many of the functions involved were already a part of GeoGebra’s previous versions, they have simply become much more user friendly. This brings the numerical point of view to closer parity with the algebraic and geometric points of view.
A third shift is an adjustment to an assumption that, GeoGebra will be used in a setting with robust network services. At the same time it is being set up with fewer assumptions on the technical skills of the users. This has been an ongoing development of the process for dynamic html pages. The default has shifted to the production of a single html page with the ggb code embedded, and the assumption that the user will have access to the application via the main ggb server. At the same time the standard collection of educational material has shifted from a wiki ([12]) to GeoGebraTube ([13]), which is now the default method of creating a dynamic html page.
References:
[1] <http://www.geogebra.org/cms/en/download> Central repository for downloading GeoGebra.
[2] < http://archives.math.utk.edu/ICTCM/VOL20/M013/paper.pdf >  Using GeoGebra to Create Applets for Visualization and Exploration – from ICTCM XX
[3] < http://archives.math.utk.edu/ICTCM/VOL22/M012/paper.pdf >  An Introduction to GeoGebra 3.2 – from ICTCM XXII
[4] < http://wiki.geogebra.org/en/Release_Notes_GeoGebra_4.0> Official Release Notes for the current version.
[5] < https://prep11geogebra.pbworks.com/w/page/52147591/New%20features%20of%20GeoGebra> Complete set of handouts for the ICTCM session corresponding to this paper.
[6] <http://prep11geogebra.pbworks.com/> GeoGebra PREP workshop home page. Location of current training handouts.
[7] < http://webspace.ship.edu/msrenault/GeoGebraCalculus/GeoGebraCalculusApplets.html > Website for complete set of applets for Calculus I, by Marc Renault
[8] < http://www.geogebratube.org/student/m8930> Slope Fields applet by Mike May, available on GeoGebraTube
[9] <http://www.geogebra.org/cms/en/roadmap> Roadmap of GeoGebra, including links for beta releases of planned new versions.
[10] <http://www.geogebra.org/web/web_gui/> Alpha release of GeoGebra Web Application
[11] <http://wiki.geogebra.org/en/GeoGebraPrim> Source for GeoGebraPrim
[12] <http://www.geogebra.org/en/wiki/index.php/Main_Page> The old repository of GeoGebra pedagogical material.
[13] < http://www.geogebratube.org/> GeoGebraTube, the new repository of GeoGebra pedagogical material.
Comments (0)
You don't have permission to comment on this page.