1 / 78

第八章 数据分析

第八章 数据分析. 8.1 数据报表设计 8.2 统计图表设计 8.3 输出打印设计 实训八 设计数据报表和统计图表. 8.1 数据报表设计. 8.1.1 数据报表设计基础 8.1.2 实例:学生选课系统版本16 8.1.3 实例:学生选课系统版本17. 8.1.1 数据报表设计基础. 1.使用计算列 (1)定义计算列的方法 下面以计算学生的平均成绩为例,说明定义数据源计 算列的操作方法。 ①选择“ File”→“New” 命令,单击“ DataWindow” 选项卡。

marv
Download Presentation

第八章 数据分析

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第八章 数据分析 8.1 数据报表设计 8.2 统计图表设计 8.3 输出打印设计 实训八设计数据报表和统计图表

  2. 8.1 数据报表设计 8.1.1 数据报表设计基础 8.1.2 实例:学生选课系统版本16 8.1.3 实例:学生选课系统版本17

  3. 8.1.1 数据报表设计基础 1.使用计算列 (1)定义计算列的方法 下面以计算学生的平均成绩为例,说明定义数据源计 算列的操作方法。 ①选择“File”→“New”命令,单击“DataWindow”选项卡。 ②选中“Grid”,单击“OK”按钮,打开“Choose Data Source for Grid DataWindows”对话框。 ③选中“SQL Select”数据源,单击“Next”按钮,打开 “Select Tables”对话框。

  4. ④选中表sc,单击“Open”按钮,打开数据源编辑窗口。 ⑤单击选中表sno列,并单击“Group”选项卡,将左部 sc.sno列拖动至右部,指定按sno列分组。

  5. ⑥单击数据源编辑窗口的“Compute”选项卡。

  6. ⑦指向空白编辑行单击右键,打开快捷菜单,选择⑦指向空白编辑行单击右键,打开快捷菜单,选择 “Functions”命令,打开函数对话框。 图8-3 函数窗口 ⑧在函数对话框中选择平均值函数avg(),单击“Paste”按扭,avg()将会粘贴在编辑行。

  7. ⑨将光标定位在函数参数位置,单击右键,打开快捷菜⑨将光标定位在函数参数位置,单击右键,打开快捷菜 单,选择“Columns”命令,打开列对话框。 ⑩在列对话框中选择列“sc.score”,单击“Paste”按扭, sc.score将会粘贴在函数参数位置。

  8. ⑾输入“as 平均值”,作为列的显示标题。

  9. ⑿保存数据窗口。 如果有多个计算列,中间用逗号分开;如果在计算列中无“as”,则列标 题将显示“compute 000x”;如果使用聚合函数,必须设置“Group”选项卡。

  10. (2)计算列常用函数 数据源的计算列函数共有50多个,主要包括:count(distinct <列表达式>|*)(指定列惟一值的个数或记录总数)、max([distinct] <列表达式>)(指定列的最大值或指定列惟一值的最大值)、min([distinct] <列表达式>)(指定列的最小值或指定列惟一值的最小值)、sum([distinct] <列表达式>)(指定列的算术和或指定列惟一值的算术和)、avg([distinct] <列表达式>)(指定列的算术平均值或指定列惟一值的算术平均值)。

  11. 2.使用计算域 (1)定义计算域的方法 ①打开需要放置计算域的数据窗口对象。 ②单击数据窗口画笔工具栏“对象列表”图标 的下拉箭头,打开对象列表,单击选中“计算域”对象图标。

  12. ③单击数据窗口上想要放置计算域的地方,打开“Modify Expression”对话框。

  13. ④在左侧窗口中选择函数、右侧窗口中选择列组成统计信息的表达式,单击“OK”按钮,即可在计算域的位置插入该表达式。④在左侧窗口中选择函数、右侧窗口中选择列组成统计信息的表达式,单击“OK”按钮,即可在计算域的位置插入该表达式。 ⑤计算域的操作和其他字段的操作方法完全一样。

  14. (2)计算域常用函数 数据窗口对象编辑窗口中计算域函数共有107个,主要包括: count(记录总数)、max(最大值)、min(最小值)、sum(算术和)、avg(算术平均值)。

  15. (3)数据窗口对象编辑窗口中的分组计算 在数据窗口对象的编辑窗口中创建分组的操作方法为: ①打开需要分组的数据窗口对象。 ②选择“Rows”→“Create Group”命令,打开“Specify Group Columns”对话框。

  16. ③将“Source Data”列表框中的字段拖动至“Columns”列表框中,表示使用该字段进行分组。也可以将“Columns”列表框中的字段拖动到“Columns”列表框外的任意地方,表示取消使用该字段进行分组。 ④双击“Columns”列表框中的字段,打开“Modify Expression”窗口,进行表达式定义。 ⑤创建分组后,数据窗口中又增加了两个区域,“Header Group”(组标题区)用来显示组名,“Trailer Group”(组尾区)用来放置每组数据的统计和汇总信息。

  17. ⑥在组标题区定义分组字段或表达式的显示名称,组尾区⑥在组标题区定义分组字段或表达式的显示名称,组尾区 放置分组的字段或表达式。

  18. 8.1.2 实例:学生选课系统版本16 例8-1 设计“学生选课系统”的“学生统计”窗口。 设计:该模块实现统计每个班级的学生人数、平均年龄和所有班级的学生总人数、总平均年龄。 脚本:

  19. 操作步骤: 第一步 设计数据窗口对象 (1)选择“File”→“New”命令,单击“DataWindow”选项卡。 (2)选中“Grid”,单击“OK”按钮,打开“Choose Data Source for Grid Data Window”对话框。 (3)选中“SQL Select”数据源,单击“Next”按钮,打开“Select Tables”对话框。 (4)选中表s,单击“Open”按钮,打开数据源编辑窗口。 (5)选中s.class列。 (6)单击“Sort”选项卡,将左部列s.class拖动至右部,指定按class的升序排序。 (7)单击“Group”选项卡,将左部列s.class拖动至右部,指定按class分组。

  20. (8)击“Compute”选项卡,指向编辑行,单击右键,打开快捷菜单,分别粘贴计数函数count(*)和平均值函数avg(year(getdate())-year(birthday)),并分别指定显示列内容为“人数”和“平均年龄”。(8)击“Compute”选项卡,指向编辑行,单击右键,打开快捷菜单,分别粘贴计数函数count(*)和平均值函数avg(year(getdate())-year(birthday)),并分别指定显示列内容为“人数”和“平均年龄”。

  21. (9)单击“Syntax”选项卡,可以检查定义的数据源。(9)单击“Syntax”选项卡,可以检查定义的数据源。

  22. (10)单击“关闭”按钮,打开“Select”对话框。 (11)单击“是”按钮,打开“Set Color and Border Setings”对话框。 (12)单击“Next”按钮,打开“Ready to Create …”对话框。 (13)单击“Finish”按钮,设置页眉区页标题,并调节列宽。

  23. (14)向下拖动“Summary”汇总区分割线拉开汇总区,单击数据窗口画笔工具栏“对象列表”图标 的下拉箭头,打开对象列表,单击选中“文本框”对象图标,单击汇总区中“班级”列对应位置插入文本框,输入文本“总人数和平均年龄”,调节文本框大小。

  24. (15)单击数据窗口画笔工具栏“计算域”对象,单击汇总区中“人数”列对应位置,打开“Modify Expression”对话框。 (16)在列表框中选择求和函数“sum( #x for all )”和列“人数”。

  25. (17)同理,在汇总区中“年龄”列对应位置插入平均值函数“avg(平均年龄for all)”。 (18)单击“OK”按钮,返回数据窗口对象编辑界面。 (19)单击“关闭”按钮,输入数据窗口对象名“d_xstj”。单击“OK”按钮,完成数据窗口对象的创建。

  26. 第二步设计“学生统计”窗口 (1)选择“File”→“New”命令,打开“New”对话框,选择“PB Object”选项卡→“Window”,单击“OK”按钮,进入窗口设计界面。 (2)设置窗口属性:在“Title”输入框中输入“学生统计”,在“WindowType”框中选择“response!”,在“WindowState”框中选择“normal!”。 (3)单击工具栏数据窗口控件,放置数据窗口控件“dw_1”,并在属性“DataObject”框中指定需要连接的数据窗口对象名为“d_xstj”,选中“HScrollBar”以及“VScrollBar”,并调整控件大小、位置。

  27. (4)单击工具栏静态文本控件,放置静态文本控件“st_1”,并命名为“班级学生统计情况”;单击工具栏命令按钮控件,放置命令按钮控件“cb_1”,并命名为“关闭”。调整窗口大小以及控件大小、位置。(4)单击工具栏静态文本控件,放置静态文本控件“st_1”,并命名为“班级学生统计情况”;单击工具栏命令按钮控件,放置命令按钮控件“cb_1”,并命名为“关闭”。调整窗口大小以及控件大小、位置。

  28. (5)选择“Open”事件,编写脚本。 (6)选择“关闭”按扭“Clicked”事件,编写脚本。 (7)单击PowerBar工具栏“保存”图标,输入窗口名“w_xstj”。 (8)打开菜单“m_main”,双击“数据分析”菜单标题“学生统计”菜单项,在下部脚本窗口中编写脚本: Open(w_xstj) (9)单击PowerBar工具栏“Run”图标,运行应用程序。选 择“数据分析”→“学生统计”命令,打开“学生统计”窗口。

  29. 8.1.3 实例:学生选课系统版本17 例8-2 设计“学生选课系统”的“课程统计”窗口。 设计:该模块实现按课程统计,统计每个班级每门课的最高分、最低分、平均分;每门课的最高分、最低分、平均分;所有课的最高分、最低分、平均分。 脚本:

  30. 操作步骤: 第一步 设计数据窗口对象 (1)选择“File”→“New”命令,单击“DataWindow”选项卡。 (2)选中“Tabular”,单击“OK”按钮,打开“Choose Data Source for Tabular DataWindow”对话框。 (3)选中“SQL Select”数据源,单击“Next”按钮,打开“Select Tables”对话框。 (4)选中表s、c、sc,单击“Open”按钮,打开数据源编辑窗口。 (5)选中c.cname、s.class列。 (6)单击“Sort”选项卡,将左部列c.cname、s.class拖动至右部,指定按cname、class的升序排序。 (7)单击“Group”选项卡,将左部列c.cname、s.class拖动至右部,指定按cname、class分组。

  31. (8)单击“Compute”选项卡,在编辑行粘贴函数并指定显示列,内容为:max( sc.score) as 最高分,min( sc.score) as 最低分,sum( sc.score) as 总分,avg(sc.score ) as 平均分。

  32. (9) 单击“关闭”按钮,打开“Select”对话框。 (10)单击“是”按钮,打开“Set Color and Border Setings”对话框。 (11)单击“Next”按钮,打开“Ready to Create …”对话框。 (12)单击“Finish”按钮,设置列标题。

  33. (13)为列标题、列添加边框线,并调节各列宽度、位置。(13)为列标题、列添加边框线,并调节各列宽度、位置。 (14)在页眉区插入文本框对象,输入内容为“课程分数统计”,调节宽度、位置。

  34. (15)选择“Row”→“Create Group …”命令,打开“Specify Group Columns”对话框,将“Source Data”框中“c_cname”列拖动至“Columns”框中,指定按cname分组。

  35. (16)单击“OK”按钮,返回数据窗口编辑界面,在数据窗口中增加了分组区。(16)单击“OK”按钮,返回数据窗口编辑界面,在数据窗口中增加了分组区。

  36. (17)在组尾区“班级”对应列位置插入文本框对象,输入内容为“本课程”。(17)在组尾区“班级”对应列位置插入文本框对象,输入内容为“本课程”。

  37. (18)单击数据窗口画笔工具栏“计算域”对象,单击组尾区“最高分”对应列位置,打开“Modify Expression”对话框,选择“max( )”函数及“最高分”列。

  38. (19)单击“OK”按钮,返回数据窗口对象编辑界面。(19)单击“OK”按钮,返回数据窗口对象编辑界面。 (20)同理,在组尾区“最低分”列对应位置插入“min(最低分for group 1)”,“平均分”列对应位置插入“avg(平均分for group 1)”。

  39. (21)同理,在汇总区“班级”对应列位置插入文本框对象,输入内容为“所有课程”,在汇总区“最高分”列对应位置插入“max(最高分for all)”,在汇总区“最低分”列对应位置插入“min(最低分for all)”,在汇总区“平均分”列对应位置插入“avg(平均分for all)”。

  40. (22)单击“关闭”按钮,输入数据窗口对象名“d_kctj”。单击“OK”按钮,完成数据窗口对象的创建。 第二步 设计“课程统计”窗口 (1)打开窗口“w_xstj”,选择“File”→“Save As”命令,打开“Save Window”对话框。 (2)在“Windows”输入框中输入“w_kctj”,即将“w_xstj”窗口另存为“w_kctj”窗口,单击“OK”按钮,返回“w_kctj”窗口设计界面。

  41. (3)修改窗口:将“Title”输入框中修改为“课程统计”,将数据窗口控件“dw_1”属性“DataObject”框数据窗口对象名修改为“d_kctj”,将静态文本控件“st_1”删除”。(3)修改窗口:将“Title”输入框中修改为“课程统计”,将数据窗口控件“dw_1”属性“DataObject”框数据窗口对象名修改为“d_kctj”,将静态文本控件“st_1”删除”。

  42. (4)单击“关闭”按钮,保存修改。 (5)打开菜单“m_main”,双击“数据分析”菜单标题“课程统计”菜单项,在下部脚本窗口中编写脚本: Open(w_kctj) (6)单击PowerBar工具栏“Run”图标,运行应用程序。选择“数据分析”→“课程统计”命令,打开“课程统计”窗口。

  43. 8.2 统计图表设计 8.2.1 统计图表设计基础 8.2.2 实例:学生选课系统版本18

  44. 8.2.1 统计图表设计基础 1.图表组成 (1)标题(Title) 用于显示图表的作用。 (2)分类轴(Category Axis) 相当于数学坐标系X坐标轴,一般情况下用于显示数据的分类。分类轴包括如下三个部分。 ①分类轴标题 ②分类轴正文 ③分类轴

  45. (3)值轴(ValueAxis) 相当于数学坐标系Y坐标轴,一般情况下用于显示分类信息的数值。值轴包括如下三个部分。 ①值轴标题 ②值轴正文 ③值轴 (4)图例说明(Legend) 用于对当前图表中的信息进行说明,用于说明颜色代表的具体含义。 (5)系列(Series) 一组相关数据点集合,通常会并列显示。

  46. 2.图表分类 (1)柱形图(Column) (2)条形图(Bar) (3)面积图(Area) (4)折线图(Line) (5)条形堆积图(StackedBar) (6)柱形堆积图(StackedColumn) (7)饼图(Pie) (8)散点图(Scatter) (9)三维图表

  47. 3.设置图表的属性 通过图表属性对话框可以设置图表的属性。图表的属性可以改变图表的显示外观和显示数据。 (1) General选项卡GraphType属性 (2) General选项卡Legend 属性 (3) Data属性选项卡 (4) Axis属性选项卡

  48. 8.2.2 实例:学生选课系统版本18 例8-3 设计“学生选课系统”的“成绩统计”窗口。 设计:该模块实现按成绩分段统计人数,在下拉列表框中每选定一门课程,按“检索”按扭,将以图表方式显示该课程的分段统计人数。 脚本:

  49. 操作步骤: 第一步设计统计表tj 启动SQL-EM,在数据库student中创建表tj。

  50. 第二步 设计数据窗口对象 (1)选择“File”→“New”命令,单击“DataWindow”选项卡。 (2)选中“Graph”,单击“OK”按钮,将打开“Choose Data Source for Graph Data Window”对话框。 (3)选中“SQL Select”数据源,单击“Next”按钮,打开“Select Tables”对话框。 (4)选中表tj,单击“Open”按钮,打开数据源编辑窗口。 (5)选中fsd、rs列。 (6)选择“Design”→“Retrieval Arguments”命令,打开“Specify Retrieval Arguments” 对话框。设置参数名“a_lbdm”,类型为“String”。 (7)单击“OK”按钮,返回数据窗口编辑界面。单击“Where”选项卡,设置条件为“tj.cno=:a_lbdm”。

More Related