@真正的高手,不靠炫技,而是靠读懂全局 —— 八荒启

目录
一. 🚀 引言
1. 背景
乖乖嘞,就这?这个软件咋啥功能界面都没有,我记得我刚接触GeoGebra的时候是GeoGebra6,本来这个软件都简洁,再加上这个版本更简洁,结果懵了半天,今天除了讲一下常规的界面,比如整体框架、常用的视图、工具栏与工具分类、对象管理、输入与命令系统快捷操作与隐藏功能、界面个性化,就是讲一下如何挖掘这个软件80%不为人知的潜力。当然,我们就用GeoGebra5和GeoGebra6的本地版举例。
| 文章路径 | 公众号:八荒启-交互动画 / 创作中心 / 系列教程 / Geogebra从入门到编程全集 / 基础篇 |
|---|---|
| 作者 | 酷酷的脸脸 |
| 所属平台 | 八荒启教育 |
| 更新日期 | 2025.8.23 |
| 资源下载 | 文章配套GGB源文件,公众号内回复“GGB003”(注意不要换行) |
2. 场景
八荒启专精于制作交互式动画,比如GGB、Canvas、H5、Unity,所以本文的介绍主要是交互动画技术为场景,逐步展开。
二、🛠️关于GeoGebra的界面(学完解锁10%功能)
本文主要是带大家先认识一下界面,让大家对GeoGebra能做什么有一个大致的印象,涉及到的内容较多,不理解没关系,后续都会逐个功能点进行讲解。
如果不知道怎么下载软件,可以参考上一篇文章:《【工具篇】GeoGebra在哪儿下载,GGB5还是GGB6?好烦呀》
1.整体框架概览
(1)GeoGebra5界面
Geogebra5的界面比较传统,属于老式软件的标准排版(至于每个界面怎么打开,文章继续往后看):
GeoGebra5分屏功能很好用,如果客户的需求包含分屏,首选GeoGebra5,如果功能复杂且包含分屏,首选网页版GeoGebra5(因为网页版的GeoGebra5支持指令范围更广,对于一些视图的上下左右调整,可以先用本地版调,然后用网页版继续制作)

(2)GeoGebra6界面
想要一定审美标准的话,GeoGebra6一定是最爱。GeoGebra不能分屏,但性能非常高,如果客户需求不包含分屏,首选GeoGebra6(不容易出莫名其妙的bug)。

如果说GeoGebra5讲究的是中规中矩,那GeoGebra6更强调“怎么方便怎么来”,在使用体验方面,GeoGebra6完全碾压GeoGebra5,尤其是对于各个界面的打开关闭,异常丝滑。
(3)GeoGebra5和GeoGebra6界面汇总
这里将所有的界面进行汇总,序号是一一对应的,可以对照看一下。需要注意一点的是,在GeoGebra6中代数区和输入栏是合并在一起,非常简洁。
| 序号 | 区域 | 功能说明 | 使用/特点 | GGB5 侧重 | GGB6 侧重 |
|---|---|---|---|---|---|
| 1 | 标题栏 | 文件名、保存状态、登录入口 | 支持本地保存和云端同步 | 桌面软件风格明显 | 简洁、移动端友好 |
| 2 | 菜单栏 | 文件 / 编辑 / 视图 / 工具 / 选项 | 汉堡按钮折叠,部分功能需弹出面板访问 | 菜单全展开,功能直观 | 折叠隐藏,界面轻量化 |
| 3 | 工具栏 | 常用绘图工具、几何构造工具 | 可折叠、自定义显示,支持模式切换 | 工具栏固定,功能独立 | 可折叠,可定制显示 |
| 4 | 代数区 | 对象列表 | 显示对象属性、对象依赖关系 | 左侧固定,可显示对象列表 | 显示对象列表更简洁,融合输入栏 |
| 5 | 输入栏 | 命令行 / 公式输入 | 精确输入点坐标、函数或命令 | 独立底部输入栏 | 已融合进代数区,无独立输入栏 |
| 6 | 图形区 | 绘图区 | 支持 2D / 3D / 表格 / 概率计算器视图,可切换显示 | 以二维绘图区为主,3D单独窗口 | 多视图模块整合,移动端友好 |
| 7 | 虚拟数字键盘 | 输入公式、函数、符号、分数、指数、根号、希腊字母等 | 在代数区空白行或编辑对象时呼出,触屏/平板友好 | 依赖物理键盘 | 屏幕键盘内置,移动端适配 |
| 8 | 右侧边栏 | 属性面板 | 调整对象样式(颜色、标签、线型、填充)、分组、锁定、可见性 | 属性窗口独立,可固定 | 右侧弹出面板,界面现代化 |
2.布局对比(GeoGebra 5 vs 6)
为了进一步了解这些界面,我们将两者进行对比分析,并给出使用角度的典型场景(对应的GGB源文件已就位,感兴趣可打开调试,见文章头部表格资源部分)。
(1)对比
| 对比维度 | GGB5(Classic 5) | GGB6(Classic 6 / Web App) |
|---|---|---|
| 总体风格 | 桌面软件布局:上方多级菜单(文件/编辑/视图/选项/工具…)+ 左/右可停靠多视图面板(代数、图形、CAS、表格、3D)。输入栏固定在底部,属性设置多用弹窗(右键→属性)。 | Web App 风格:顶栏简洁,菜单折叠进汉堡按钮;视图按需显示;右侧常驻属性侧栏(风格/代数/基本/进阶),输入栏可随时唤出/隐藏;屏幕自适应,移动端友好。 |
| 导航与发现 | 工具都摊在工具栏上,图标密集、上手快;但新手第一次要在菜单里找“视图”管理。 | 顶部工具更“精选化”;更多选项藏在右侧属性面板与汉堡菜单里;支持搜索/输入,界面更清爽。 |
| 视图管理 | 在“视图”里勾选代数/图形/CAS/表格/3D,可做并排多视图布局(适合推导—作图联动)。 | 默认单主视图,需要时再开启其它视图;布局随窗口宽度自适应,平板/手机自动折叠。 |
| 输入与指令 | 底部固定输入栏,键盘党节奏稳。 | 输入栏默认隐藏,敲键或点代数视图即可唤出;移动端可呼出软键盘,编辑体验更顺畅。 |
| 属性与样式 | 右键对象→属性对话框(弹窗),多对象批量改样式时需切页操作。 | 右侧属性面板实时预览,调线型/颜色/标签更直观;样式复制功能更方便。 |
(2)场景 1:课堂上快速画函数并美化样式
任务:作图 f ( x ) = sin x + 0.5 x f(x)=\sin x + 0.5x f(x)=sinx+0.5x,加粗、改色、加网格与坐标轴刻度。
-
GGB5
- 底部输入栏键入
f(x)=sin(x)+0.5x回车。 - 右击图形→“图形”属性(或右击曲线→属性),在样式页调整粗细/颜色。
- 菜单“视图”勾选坐标轴/网格,或右击空白处快速开/关。

- 底部输入栏键入
-
GGB6
- 直接键入,输入框会自动浮现,回车。
- 选中曲线,右侧属性侧栏里调整粗细/颜色(实时预览)。
- 右上齿轮→图形设置,快速开/关网格/坐标轴;也可点画布空白处打开“图形设置”。

💡 差异:GGB6 的侧栏实时预览更适合投屏演示;GGB5 的固定输入栏更适合连续键入多条函数。
(3)场景 2:数据拟合(实验/测量数据)
任务:粘贴 ( x , y ) (x,y) (x,y) 数据→散点→线性拟合→显示拟合方程与 R 2 R^2 R2。
- GGB5
- 打开表格视图,粘贴两列数据(A,B)。
- 选中数据→工具栏“创建列表点”。
- 输入栏执行
FitLine(list1)或用工具里的“最佳拟合线”。

- GGB6
- 在表格中粘贴数据。
- 右侧面板或表格工具生成点图。
- 在输入框用
FitLine[…],或选散点后在建议/分析中直接点线性回归。 - 右侧属性面板勾选显示方程/统计信息。

💡 差异:GGB6 的表格→图表→分析更连贯;GGB5 偏向指令+工具栏的“老派流程”。
3.常用视图
先来回答一下大家的问题,什么是视图?举个例子,使用GeoGebra6的时候经常发现,这个是啥:

其实这个就是视图,甚至在下载软件的时候,软件安装包会根据视图区分开来,可以下载套件,也可以单独下载某个视图软件。
(1)GeoGebra都有哪些视图
如果把视图全部汇总起来的话,一共有:
| 序号 | 功能/视图 | GeoGebra 5(桌面版) | GeoGebra 6(网页版 & App) |
|---|---|---|---|
| 1 | Algebra View(代数区) | ✅ 有 | ✅ Graphing Calculator 内置 |
| 2 | Graphics View 1(图形视图1) | ✅ 有 | ✅ Graphing Calculator 内置 |
| 3 | Graphics View 2(图形视图2) | ✅ 有 | ❌ 取消(只能开一个图形窗口) |
| 4 | 3D Graphics(三维图形) | ✅ 有 | ✅ 独立为 3D Calculator |
| 5 | Spreadsheet(电子表格) | ✅ 有 | ✅ 独立/可用 |
| 6 | CAS(代数系统) | ✅ 有 | ✅ 独立为 CAS Calculator |
| 7 | Probability Calculator(概率计算器) | ✅ 有 | ✅ 独立为 Probability Calculator |
| 8 | Construction Protocol(作图步骤/作图记录) | ✅ 有 | ❌ 取消 |
| 9 | Scientific Calculator(科学计算器) | ❌ 无 | ✅ 独立为 Scientific Calculator |
GGB5真是一个大全集,但GGB6更新的速度很快,可能是官方主推的原因,去年加上了Spreadsheet视图,今年又多了一个Scientific Calculator视图,除了性能,功能上也正在逐步超越GGB5
(2)一句话了解每个视图的作用
对于初学者来说,一个代数视图(Algebra View)、一个图形视图(Graphics View)、一个3D视图(3D Graphics),就足够用了,至于其他的视图,可以简单了解一下。
| 序号 | 功能/视图 | 一句话作用说明 |
|---|---|---|
| 1 | Algebra View(代数区) | 用代数式直接控制和查看图形对象 |
| 2 | Graphics View 1(图形视图1) | 主窗口,用来绘制函数和几何图形 |
| 3 | Graphics View 2(图形视图2) | 提供第二个独立画布便于对照展示 |
| 4 | 3D Graphics(三维图形) | 绘制立体几何与函数曲面 |
| 5 | Spreadsheet(电子表格) | 输入数据并与图形、统计分析联动 |
| 6 | CAS(代数系统) | 进行符号运算如解方程、积分等 |
| 7 | Probability Calculator(概率计算器) | 模拟和计算概率分布与统计实验 |
| 8 | Construction Protocol(作图步骤/作图记录) | 按步骤记录和回放作图过程 |
| 9 | Scientific Calculator(科学计算器) | 提供常规科学计算器功能 |
至于每个视图怎么使用,后续系列文章我们通过具体的功能来讲解。
4.工具栏与工具分类
工具栏可能是大家在GeoGebra中看到的为数不多的操作方式,初见的时候“哇,这么多工具”,再用的时候“咋才这么点工具”,其实这也是GeoGebra强大的核心——并不把所有的功能都封装成现成的工具,而是逐步扩展自己的指令集,仿佛告诉我们,需要什么自己写。

Geogebra强大之处不在于工具多少,而在于丰富的指令集,所以才有了10%功能靠官方提供,90%功能靠我们自己手搓。
下边是一些当前最新的工具集合:
| 类型 | 工具名称(中文) | 工具名称(英文) | 作用描述 |
|---|---|---|---|
| 基本工具 | 点 | Point | 创建一个点 |
| 直线 | Line | 创建一条直线 | |
| 射线 | Ray | 创建一条射线 | |
| 圆 | Circle | 创建一个圆 | |
| 角度 | Angle | 测量两个射线之间的夹角 | |
| 构造工具 | 中点 | Midpoint | 创建两点之间的中点 |
| 垂线 | Perpendicular Line | 创建一条垂直于给定线段的直线 | |
| 平行线 | Parallel Line | 创建一条与给定直线平行的直线 | |
| 切线 | Tangent | 创建与给定圆相切的直线 | |
| 度量工具 | 距离 | Distance | 测量两点之间的距离 |
| 角度 | Angle | 测量两条射线之间的角度 | |
| 面积 | Area | 计算多边形或封闭图形的面积 | |
| 变换工具 | 对称 | Reflection | 创建给定对象的对称图形 |
| 旋转 | Rotation | 绕指定点旋转给定对象 | |
| 平移 | Translation | 将给定对象沿指定方向平移 | |
| 缩放 | Dilate | 按指定比例缩放给定对象 | |
| 特殊工具 | 滑块 | Slider | 创建一个可调节的数值滑块 |
| 图像 | Image | 插入图像文件到画布中 | |
| 按钮 | Button | 创建一个可点击的按钮,用于触发事件 | |
| 复选框 | Checkbox | 创建一个可选的复选框,用于控制显示或隐藏对象 |
5.对象管理
为什么要将对象管理?其实这个地方是GeoGebra的底层逻辑,简单来说,GeoGebra是由java程序编写成了,而面向对象编程是java语言的灵魂,所以理解了对象管理,那么日后使用GeoGebra就像打通了任督二脉一样。
这里主要从 对象列表(代数区)、对象属性、分组与图层、依赖关系(自由对象 vs 依赖对象) 4个方面逐步展开,当然,为了方便记忆,最后再放一个"一页速查"供参考。
(1)对象列表(代数区)
代数区(Algebra View)会列出当前文件中的所有对象,注意这句话的含量:文件中的所有对象,所以只要是视图中展示的内容,都可以在这里找到相应的对象,对象都会显示名称、定义、值,我们可以快速选中对象、重命名、隐藏/显示、删除、跳转到属性等等操作。
| 功能点 | 说明 |
|---|---|
| 自动命名 | 点依次命名为 A、B、C…,直线为 a、b、c…,函数为 f、g、h… |
| 重命名 | 双击名称即可更改,依赖对象会自动同步更新 |
| 显示方式 | 可切换“定义 / 值 / 定义与值” |
| 浏览模式 | 按类型或按构造顺序查看,可选择显示辅助对象 |
| 快速操作 | 点击“眼睛”控制显隐,Delete 删除,右键可直达属性/重定义 |

(2)对象属性
| 属性类别 | 说明 |
|---|---|
| 样式 | 改变颜色、透明度、点型、线型、填充方式 |
| 标签 | 显示方式可设为隐藏 / 名称 / 值 / 名称+值 / 自定义说明 |
| 代数 | 查看和修改对象的定义表达式 |
| 高级设置 | 包含图层、显示条件、固定对象、允许选中、轨迹、动画 |
| 动态颜色 | 用表达式控制 R/G/B/透明度,使对象随参数变化变色 |

注意,GeoGebra没法更改字体类型,比如是微软雅黑还是黑体,默认都是sans-Serif,也可以调成LaTeX字体。
(3)分组与图层
| 功能点 | 说明 |
|---|---|
| 图层顺序 | 图层编号 0–9,数值越大越靠上 |
| 可见性 | 通过“眼睛”图标或布尔条件控制显示/隐藏 |
| 锁定 | 固定对象避免误操作,可取消“允许选中” |
| 批量修改 | 多选对象后可统一修改样式、图层或创建对象列表 |
| 分组方式 | 没有永久分组,通常通过多选或对象列表实现类似效果 |

在GeoGebra的代数区里,对象默认的排列数据是按照构造顺序来的,也就是我们先创建和后创建的顺序,当然也有其他排序方式,在这里调节:

自由调节排序的好处不容小觑,当我们的动画趋于复杂的时候,我们可以通过这个对象排列方式快速定位某个内容进行修改,而不至于是满屏盲找了。

- 每个对象的变量名都是在该GeoGebra文件中都是唯一的,所以养成一个好的命名习惯也非常重要,如果全都是用a1、b1、c1这种命名方式,哈哈,那无敌,十分钟过后自己也不知道每个指令是啥。
- 建议用英文操作,用英文命名,比如blueBox、redLine、speedSlide这种,当然,我们对于高级工程师会有这种要求。
(4)依赖关系(自由对象 vs 依赖对象)
依赖关系是GeoGebra中非常重要的一个逻辑,这个逻辑决定了一个动画的生死(而不是好坏)。
简单来说,A是一个点,B点是A向右平移5个单位生成的,那么A就是一个自由对象,B就是一个依赖对象。
A=(0,0)
B=A+(5,0)
然后你会发现,当我们拖动A的时候B也会跟着移动,但是当我们拖动B的时候,拖不动,这就是A决定B。至于怎么查看依赖,代数区默认的构造排序中,上边决定下边。

当然依赖关系更详细的内容,我这里列一个表格梳理一下:
| 类型 | 说明 |
|---|---|
| 自由对象 | 独立创建,可自由拖动和修改(如独立点、滑块) |
| 依赖对象 | 由父对象定义,位置或值由父对象决定(如中点、交点) |
| 重定义 | 可修改对象的生成方式以改变依赖关系 |
| 删除影响 | 删除父对象会导致依赖对象消失或未定义 |
| 查看依赖 | 代数区看定义,或在作图步骤里查看依赖顺序 |
如果你的指令总是不对,记得查看一下依赖关系:
- B依赖A,A依赖C,C依赖B,那就构成循环依赖,会报错;
- 自由对象的名字一改,后续所有依赖对象都会发生改变;
- 如果误删了自由对象,那就会跟雪崩一样。
(5)一页速查
对象管理是指令逻辑编写的重中之重,我这里放一个速查表,方便大家出现问题的时候快速一一排查:
| 序号 | 问题情境 | 解决方案 | 关键位置 |
|---|---|---|---|
| 1 | 找不到对象 | 在代数区搜索对象名称;切换显示模式 → “按类型”;勾选“显示辅助对象” | 代数区视图菜单 |
| 2 | 只想课堂分步展示 | 插入一个复选框;在相关对象属性中设置 → 显示条件 = 复选框名 | 对象属性 → 高级 |
| 3 | 避免误拖/误操作 | 在对象属性中勾选“固定对象”;取消“允许选中” | 对象属性 → 基本 |
| 4 | 元素被遮挡/挡住 | 调整图层:将当前对象提升至更高图层;或把遮挡对象降到更低图层 | 对象属性 → 高级(图层) |
| 5 | 线条或点样式不对 | 修改样式:点型(圆/十字/小方块)、线宽、线型(实线/虚线/点划线)、颜色 | 对象属性 → 样式 |
| 6 | 依赖关系混乱 | 查看对象定义(代数区);或打开“作图步骤”检查依赖链;必要时右键对象 → “重定义” | 代数区 / 作图步骤面板 |
| 7 | 标签显示不合适 | 设置标签:隐藏、仅名称、仅值、名称与值 | 对象属性 → 基本 |
| 8 | 整体对象需要分组管理 | 将相关对象分配同一图层;或用复选框控制成组可见性 | 属性 → 高级 / 复选框逻辑 |
6.输入与命令系统
GeoGebra中制作动画,无论是数学、物理还是化学生物,所有的根基都是数学,这么避免不了。数学之后呢?那就是编程,数学+编程,就是GeoGebra的输入与命令系统,数学是输入,编程是命令系统。
(1)输入系统
输入我就不多说了,这里列几个常见的数学输入,可以看看效果:
| 序号 | 指令 | 示例 | 作用说明 |
|---|---|---|---|
| 1 | A = (2, 3) | A = (2, 3) | 定义点 A 坐标为 (2,3)。 |
| 2 | f(x) = x^2 + 2x + 1 | f(x) = x² + 2x + 1 | 定义函数 f(x)。 |
| 3 | a = 5 | a = 5 | 定义一个自由数 a。 |
| 4 | g: y = 2x + 1 | y = 2x + 1 | 定义直线 g。 |
| 5 | h: x^2 + y^2 = 25 | x² + y² = 25 | 定义圆 h,圆心在原点,半径 5。 |
| 6 | Midpoint[A, B] | Midpoint[(0,0),(4,0)] | 求线段 AB 的中点。 |
| 7 | Intersect[f, g] | Intersect[x², 2x+1] | 求函数 f 与 g 的交点。 |
| 8 | Solve[f(x)=0] | Solve[x²+2x+1=0] | 解方程。 |
| 9 | Derivative[f] | Derivative[x²+2x+1] | 求导数。 |
| 10 | Integral[f] | Integral[x², 0, 2] | 计算定积分 ∫₀² x² dx。 |
| 11 | RandomBetween[1,10] | RandomBetween[1,10] | 生成 1 到 10 的随机整数。 |
| 12 | Sequence[n^2, n, 1, 10] | Sequence[n², n, 1, 10] | 生成一个数列 {1,4,9,…,100}。 |
| 13 | Sum[list] | Sum[{1,2,3,4}] | 计算和,结果为 10。 |
| 14 | Mean[list] | Mean[{1,2,3,4}] | 计算均值,结果为 2.5。 |
| 15 | FitLine[list of points] | FitLine[{(1,2),(2,3),(3,5)}] | 回归直线拟合。 |

更多的数学输入,可以在这里查看:

(2)命令系统
Geogebra的命令系统有两种:GeoGebra指令和JavaScript指令,前者是我们刚刚说的数学输入,后者就是真真切切的编程了,采用的语言是JavaScript;
| 对比项 | GeoGebra 指令 | JavaScript 指令 |
|---|---|---|
| 本质 | 数学命令/构造指令 | 通用编程语言(JavaScript) |
| 用途 | 直接在代数区或输入栏输入,用于构造对象、计算、操作 | 绑定到按钮、复选框、事件(如 OnClick、OnUpdate),实现逻辑控制与交互 |
| 输入位置 | 代数区、输入栏 | “对象属性 → 脚本”面板 |
| 典型语法 | A = (0,0)B = (2,3)C = Midpoint(A, B) | ggbApplet.evalCommand("C = Midpoint(A, B)"); |
| 结果 | 直接生成几何对象或数值结果 | 控制 GeoGebra 内部对象的行为,或调用 API 接口 |
| 优势 | 简单直观,适合课堂快速构造 | 灵活可编程,可实现条件判断、循环、批量生成对象等复杂逻辑 |
| 限制 | 功能偏几何/代数,逻辑性较弱 | 学习门槛高,需要掌握 JavaScript 基础 |
| 常见场景 | 构造点线面、函数绘图、代数运算,小动画演示 | 一键展示/隐藏图形、动态演示、大型互动动画、小游戏 |
正常来说简单几何难度的GGB,GeoGebra 指令够用,但是复杂几何难度,靠GeoGebra 指令就有点吃力了,需要借助JavaScript 指令,对于真实模拟和场景动画,GeoGebra只能当配角,否则逻辑的编写堪称是一场灾难。
7.快捷操作与隐藏功能
Geogebra中还是有很多快捷操作的,我这里罗列一下常见的快捷操作方式:
(1)Ctrl + E 弹出右侧边栏

在编写脚本的时候非常方便,因为经常有些指令是必须把属性面板关了才能运行。当然,在设置对象属性的时候也很方便。
(2)鼠标右键拖动框选

(3)ESC取消激活工具
激活某个工具,绘制完成后需要取消激活,可以按ESC,要不会一直锁定当前工具,没法进行其他操作。

(4)按住Ctrl并进行鼠标左边点选,可以加选:

在代数视图同样适用:

(5)在代数视图可以按住Shift,进行一定范围加选
按住Shift,点一下开始对象,再点一下结束对象,就可以选择一堆对象:

注意,有时候一开始按Shift,会触发返回顶部的操作,这个时候重新滚动下来,再按Shift就可以了。
(6)鼠标右键按住对象不要松,可以拖动对象
当然鼠标左键也可以,但是鼠标右键是强制型的,比如对于复选框,只有右键可以移动。

(7)双击对象可以重新定义

(8)Ctrl + Shift + S可以打开SpreadSheet视图

(9)更多操作方式,可以见这个表
| 功能说明 | Windows / Web 快捷键 | macOS 快捷键 |
|---|---|---|
| 打开 / 隐藏代数视图(Algebra View) | Ctrl + Shift + A | Cmd + Shift + A |
| 打开 / 隐藏 Graphics Window 1 | Ctrl + Shift + 1 | (未显示 / 兼容只限某版本) |
| 打开 / 隐藏 Graphics Window 2 | Ctrl + Shift + 2 | (同上) |
| 打开 / 隐藏 Construction Protocol | Ctrl + Shift + L | Cmd + Shift + L |
| 打开 / 隐藏 Spreadsheet (电子表格) | Ctrl + Shift + S | Cmd + Shift + S |
| 打开 / 隐藏 Probability Calculator | Ctrl + Shift + P | Cmd + Shift + P |
| 打开 / 关闭对象属性面板 | Ctrl + Shift + E | Cmd + Shift + E |
| 切换显示 “定义 / 值 / 指令” | Ctrl + D | Cmd + D |
| 显示 / 隐藏所选对象 | Ctrl + G | Cmd + G |
| 显示 / 隐藏所选对象的标签 | Ctrl + Shift + G | Cmd + Shift + G |
| 显示 / 隐藏图像视图(CAS) | Ctrl + Shift + B(导出Base64字符串) | Cmd + Shift + B |
| 复制(一般复制) | Ctrl + C | Cmd + C |
| 复制表格中的值 | Ctrl + Alt + C | Cmd + Alt + C |
| 撤销 / 重做 | Ctrl + Z / Ctrl + Y 或 Ctrl + Shift + Z | Cmd + Z / Cmd + Y 或 Shift + Cmd + Z |
| 保存文件 | Ctrl + S | Cmd + S |
| 导出为动态网页格式(Dynamic Worksheet) | Ctrl + Shift + W | Cmd + Shift + W |
| 导出为网页 HTML string | Ctrl + Shift + M | Cmd + Shift + M |
| 放大 / 缩小 | Ctrl + + / Ctrl + – | (macOS 类似) |
| 光标增速 / 减速(滑块或移动点) | Ctrl + → / ← 或 Shift + → / ← | (类似 macOS) |
| 删除 / Backspace 删除对象 | Delete / Backspace | Delete / Backspace |
| 清除追踪轨迹(Trace) | Ctrl + F | (macOS 同理) |
| 重新计算所有对象(包括随机数) | F9 或 Ctrl + R | (macOS 同理) |
好了,基本上就是这些快捷操作,当然还有什么导出gif、导出图片、导出为网页、导出为exe、保存为在线ggb,这个后续文章再慢慢谈。
8.界面个性化
网上很多流量教程说GGB可以修改主题,比如深色和浅色,以及其他很多的功能,这里关于界面个性化这一块儿我澄清一下:
| 功能 | GeoGebra 5 支持情况 | GeoGebra 6 支持情况 | 备注说明 |
|---|---|---|---|
| 主题颜色 | ✅ 支持浅色/深色主题切换 | ❌ 暂不支持切换主题 | GeoGebra 5 可以在设置中选择主题;GeoGebra 6 仅能调整背景颜色 |
| 工具栏定制 | ❌ 不支持自定义顺序或隐藏工具栏 | ❌ 不支持自定义顺序或隐藏工具栏 | 两个版本的工具栏都固定,无法调整顺序或隐藏某些工具 |
| 语言切换 | ✅ 支持多语言切换,包括中文 | ✅ 支持多语言切换,包括中文 | 可在设置中选择语言 |
| 隐藏/显示面板 | ✅ 可以隐藏或显示代数区、图形视图等面板 | ✅ 可以隐藏或显示代数区、图形视图等面板 | 点击视图名称旁的眼睛图标进行切换 |
| 背景颜色 | ✅ 支持设置画布背景颜色 | ✅ 支持设置画布背景颜色 | 在设置中选择“背景颜色”进行调整 |
(1)关于语言的选择
- 有余力,用英文;
- 有余力,用英文;
- 有余力,用英文;
无论是哪本教授写的书,都会标注上这句话,充分显示了英文对于创作交互动画的重要性,但经常会有人问:“不是中文指令也能跑吗,为啥非要用英文?”
其实这句话应该这么回答:“能跑,和能创作,是两个概念”。这里我汇总一下为什么中文没法编程:
| 维度 | 英文指令(推荐) | 中文指令(局限) | 说明 |
|---|---|---|---|
| 语法一致性 | 与国际版、官方文档保持完全一致,不存在歧义 | 中文存在歧义(如“点”既是几何点又是句号),不同版本可能不兼容 | 影响跨版本、跨平台可用性 |
| 跨平台移植 | 任何平台(Web、桌面、移动端)都能直接运行 | 中文环境下可能出现乱码或不识别 | 导致作品在分享或移植时失败 |
| 学习资料匹配 | 与官方手册、教学视频、论坛示例完全对应 | 大部分教材/案例是英文,中文难以直接搜索或套用 | 学习成本更高 |
| 变量与命名 | 简洁、规范(如 f(x),a1,Polygon) | 中文变量可能含空格/特殊符号(如“函数1”),容易报错 | 不利于编写复杂模型 |
| 脚本扩展性 | 可直接结合 JavaScript、Python 脚本扩展 | 中文指令几乎无法与外部脚本语言交互 | 失去进阶玩法 |
| 团队协作 | 国际化代码,任何人都能读懂、维护 | 中文脚本只适合本地用户,合作或开源完全受限 | 无法复用 |
| 可维护性 | 长期稳定,不会因语言环境切换而崩溃 | 中文指令可能因 GeoGebra 更新而失效 | 稳定性差 |
| 搜索可用性 | 英文关键词能搜到大量 StackExchange、GitHub 资源 | 中文关键词基本找不到可复用代码或答案 | 影响问题解决效率 |
| 输入效率 | 英文代码输入流畅(键盘符号、快捷方式) | 中文要频繁切换输入法,效率低,还容易混入全角/半角符号 | 容易出错 |
| 生态兼容性 | 与其他数学软件、LaTeX、编程语言高度兼容 | 中文几乎没有兼容性,和其他工具无法直接对接 | 封闭环境 |
📌 总结一句话:
👉 中文“能跑”只是给入门者一个低门槛,但创作复杂作品、共享、扩展、长期维护,必须依靠英文指令。
(2)关于背景颜色
可以在这里修改颜色,有时候弄成黑色背景,然后把线条都变成白色,会显得很高级。(除非客户需要,尽量不要做这种主题,课堂上后排学生看不清)

在高阶教程中,往往使用PS搭建背景,整体作品的质量会有质的提升。
三、🎮关于GeoGebra功能的拓展(学完解锁90%功能)
在GeoGebra的历史版本中,曾经出来过一个功能叫做自定义工具,自定义工具允许用户把自己经常使用的一系列构造步骤,打包成一个“工具按钮”,以后就能像调用内置工具(直线、圆、点)一样快速使用。自定义工具可以保存为 .ggt 文件。这个文件可以分享给他人,他们导入后就能用同样的工具。
🚨但是后来完全取消了 .ggt 的导入导出。原因可能是:
- 追求轻量化与跨平台一致性。
- 移动端用户少用到复杂的几何宏命令。
- 官方转向脚本(JavaScript/GGBScript)来实现类似扩展功能。
注意我写的这句话:
官方转向脚本(JavaScript/GGBScript)来实现类似扩展功能
对的,你猜的没错,那就是用脚本来解锁GeoGebra90%的功能,这才是GeoGebra最强大的地方。虽说GeoGebra脚本是高阶玩儿法,这里只是让大家先感受一下。这里先放上脚本:
f1(x) = 0.5*x + 1
f2(x) = x^2 - 2*x + 1
f3(x) = x^3 - x
f4(x) = 0.1*x^4 - x^2 + 1
f5(x) = abs(x - 1)
f6(x) = sqrt(x + 5)
f7(x) = (x^2 - 1)/(x - 2)
f8(x) = 2^x
f9(x) = exp(x)
f10(x) = ln(x + 6)
f11(x) = sin(x)
f12(x) = 2*cos(0.5*x - 1)
f13(x) = tan(x)
f14(x) = exp(-0.2*x) * sin(2*x)
f15(x) = exp(-x^2 / 2)
f16(x) = 1/(1 + exp(-x))
f17(x) = If[x < -1, -1, If[x <= 1, x^2, 1]]
f18(x) = sqrt(9 - x^2)
Curve(3*sin(2*t), 2*sin(3*t), t, 0, 2*pi)
Curve((2+cos(3*t))*cos(t), (2+cos(3*t))*sin(t), t, 0, 2*pi)
打开GeoGebra,创建按钮,然后将上边的脚本粘贴进去:

当前代数区为空,绘画区为空:

点击按钮后,全部函数绘制完毕:

这个就是脚本的威力,当这个90%与GeoGebra提供的10%功能合并,才是一个真正的GeoGebra!让我们一起,学有所成。
四. 📦结尾
GeoGebra 看似只是一个画几何图的小软件,实则是一个 “数学 + 编程” 双核驱动的交互平台。
- 界面上:GGB5 更像传统桌面软件,功能全面、支持分屏;GGB6 则轻量化、移动端友好,性能更高。
- 视图上:代数区、图形区、3D、表格、CAS、概率计算器等,应有尽有,几乎覆盖数学学习和建模的方方面面。
- 工具栏:表面上工具不多,但真正的力量在于 指令系统,90% 的功能要靠我们“手搓”出来。
- 对象管理:代数区、属性、图层、依赖关系,构成了动画逻辑的基石,理解了这些,才算真正入门。
- 输入与命令:GeoGebra 指令适合快速实验、小动画;JavaScript 指令则能做大型交互和完整应用。
- 隐藏功能:快捷键、复选框逻辑、右键操作,都是高效建模与课堂演示的秘密武器。
- 功能拓展:GeoGebra强大的内核,90% 的能力都来自扩展,比如脚本事件、外部交互、复杂运算。
所以说,高手不在于炫技,而在于看懂全局。学会界面、视图、工具、对象与指令的联动,GeoGebra 就不仅仅是数学工具,而是交互动画创作的利器。 🎯
现在整张地图已经看完,这里是本篇涉及到的源文件,若有需要可以自取上手试一下(见文章开头):

本文收录于微信公众号:八荒启-交互动画,可点击扫码关注,获取更多技术咨询与服务。
1518

被折叠的 条评论
为什么被折叠?



