Interpreting a Cumulative Frequency Polygon (II)

Interpreting a Cumulative Frequency Polygon (II)
Loading the math board and drawing, please wait…
2021-01-17 23:23
This example demonstrates how a cumulative frequency polygon (a connected polyline) turns grouped data into an interpretable graph showing the running total of frequency (or cumulative frequency/relative cumulative frequency). It highlights how adjacent class intervals contribute to the overall shape and how to read the trend from the constructed polygon. Key concepts include grouped statistics, cumulative frequency, class boundaries, class width, and the mapping from a frequency table to a plotted sequence of cumulative points. Construction in GeoGebra relies on Sequence to generate the indexing/interval endpoints, Segment/Vector/Corner to establish geometric positions, PolyLine to connect cumulative points into the polygonal line, Point to place endpoints and cumulative markers, and Textfield for annotations. Conditional logic via If is used to handle boundary cases (selecting start/end contributions). The construction uses computed objects such as classwidth, lower/upper class limits, and cumulative frequency variables (e.g., cf1–cf8, cfreq), along with coordinate scaling parameters (x/ y scales) to place everything correctly. Suitable for secondary and early undergraduate statistics lessons and for classroom exploration of cumulative distribution visualization.

GeoGebra Commands & Parameters

  1. Sequence(Segment[(xlower, i), (xupper, i)], i, ylower, yupper, ysscale) → yminor
  2. Sequence(Segment[(xlower, i), (xupper, i)], i, ylower, yupper, ylscale) → ymajor
  3. Sequence(Segment[(i, ylower), (i, yupper)], i, xlower, xupper, xsscale) → xminor
  4. Segment(O, (x(O) + xsscale, y(O))) → sec1
  5. Segment((x(O) + xsscale, y(O)), (x(O) + (2 * xsscale), y(O) + (2 * ysscale))) → sec2
  6. Segment((x(O) + (2 * xsscale), y(O) + (2 * ysscale)), (x(O) + (3 * xsscale), y(O) + (-2 * ysscale))) → sec3
  7. Segment((x(O) + (3 * xsscale), y(O) - (2 * ysscale)), (x(O) + (4 * xsscale), y(O))) → sec4
  8. Vector(O, Y_e) → yaxi
  9. Vector(X_0, X_e) → xaxi
  10. Corner(2, 1) → Z
  11. Sequence((lowerclasslimit + ((i - 1) * classwidth), cfreq(i)), i, 1, n) → cfscatter
  12. PolyLine(cfscatter) → cfplot
  13. Point(Segment[(x(O), ylower), (x(O), Max[Take[cfreq, 1, n]])]) → P
  14. PolyLine(P, (x(P_1), y(P)), P_1) → p
  15. Point(Segment[(lowerclasslimit, ylower), (lowerclasslimit + ((n - 1) * classwidth), ylower)]) → Q
  16. PolyLine(Q, (x(Q), y(Q_1)), Q_1) → q
  17. Sequence(Segment[(x(O) - xsscale / 2, (i * ylscale)), (x(O) + xsscale / 2, (i * ylscale))], i, 1, Div[yupper, ylscale] - 1) → yint
  18. Sequence(Segment[(x(C) + (4 * i), y(C)), (x(C) + (4 * i), y(C) - (n + 1))], i, 0, 2) → T2
  19. Sequence(Segment[(x(C), y(C) - i), (x(C) + 8, y(C) - i)], i, 0, n + 1) → T1
  20. Textfield(lowerclasslimit) → InputBox1
  21. Textfield(upperclasslimit) → InputBox2
  22. Textfield(cf2) → InputBox4
  23. Textfield(cf3) → InputBox5
  24. Textfield(cf4) → InputBox6
  25. Textfield(cf5) → InputBox7
  26. Textfield(cf6) → InputBox8
  27. Textfield(cf7) → InputBox9
  28. Textfield(cf8) → InputBox10
  29. Sequence(Segment[(lowerclasslimit + (i * classwidth), ylower + ysscale / 2), (lowerclasslimit + (i * classwidth), ylower - ysscale / 2)], i, 0, n - 1) → xint
  30. PolyLine(R, (x(R), y(R_1)), R_1) → r
  31. Point(Segment[Q, (lowerclasslimit + ((n - 1) * classwidth), ylower)]) → E
  32. PolyLine(E, (x(E), y(E_1)), E_1) → e
  33. Sequence(Segment[(i, ylower), (i, yupper)], i, xlower, xupper, xlscale) → xmajor
  34. PolyLine(S, (x(S_1), y(S)), S_1) → s
  35. PolyLine(T, (x(T_1), y(T)), T_1) → t_3
  36. PolyLine(U, (x(U_1), y(U)), U_1) → u
  37. If(chi ≟ false, RotateText["Cumulative frequency", 90°], RotateText["累積頻數", 90°]) → text4

AI Drawing Prompt Reference

Draw a cumulative frequency polygon graph. The horizontal axis represents class boundaries (lower and upper class limits), and the vertical axis represents cumulative frequency. First, draw the coordinate axes and grid lines with major and minor ticks. Then, plot cumulative frequency points at each class boundary using given cumulative frequencies (e.g., cf1 to cf8), and connect these points with a polyline to form the polygon. Add auxiliary reference segments from the origin and text input boxes for class limits and cumulative frequencies. Finally, place a rotated 90-degree text label 'Cumulative frequency' along the vertical axis. The layout should clearly show the rising trend of cumulative frequency.
The prompt above was compiled from the original drawing commands and is for reference only.