用三维饼图分析各阶段人数比例

本文介绍了一个使用VB6编程语言实现的三维饼图绘制程序。该程序能够根据输入的学生考试成绩分布数据,在不同成绩区间(优秀、良好、中等、及格、不及格)绘制出相应的三维饼图,并展示每个区间的具体比例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 ‘设计一程序,用三维饼图表达考试成绩分别在 优秀、良好、中等、及格和不及格 5个区间的学生人数比例关系(程序运行界面已上传至相册VB6)

Option Base 1
Private Sub Command1_Click()
Dim map(5) As Single, total!, i%, j%
For i = 1 To 5
 map(i) = Val(Text1(i - 1))          ' 将各文本框中的数据存入数组map中
 If map(i) = 0 Then j = j + 1
 total = total + map(i)
Next
 If total = 0 Or j > 1 Then
  MsgBox "至少要输入2个区间段的人数!!"
  Exit Sub
 End If
For i = 1 To 5
 map(i) = map(i) / total
Next
Call drawcake(map)          ' 调用画图过程,实参为数组
End Sub

Private Sub Command2_Click()
Unload Me              ’强制退出程序 或者用 end
End Sub

 

Private Sub Form_Activate()
 Text1(0).SetFocus
End Sub

Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer)
If Not IsNumeric(Chr(KeyAscii)) And KeyAscii <> 8 Then
 KeyAscii = 0        '如果按非数字键或退格键,取消按键
End If
End Sub

Public Sub drawcake(map() As Single)
 Const pi! = 3.1415926
 Dim i%, rate!, mx!, my!, mr!
 mx = 2500: my = 1200                 ' 圆心坐标
 mr = 2000                            ' 圆的半径
 rate = 0.4                           ' 椭圆的短轴与长轴之比
 Picture1.Cls
 Picture1.FillStyle = 0            ' 完全填充
 For i = 1 To 200    '用循环语句画200个圆 从而实现从二维图到三维图的转化
 If map(1) > 0 Then
  Picture1.FillColor = RGB(208, 128, 128)      '设定所画区域填充红色
  Picture1.Circle (mx, my - i), mr, vbRed, -2 * pi, -2 * pi * map(1), rate '画出所占比例部分扇形
 End If
 If map(2) > 0 Then
  Picture1.FillColor = RGB(240, 240, 128)    '设定所画区域填充黄色
  Picture1.Circle (mx, my - i), mr, vbYellow, -2 * pi * map(1), -2 * pi * (map(2) + map(1)), rate '画出所占比例部分扇形
 End If
If map(3) > 0 Then
  Picture1.FillColor = RGB(128, 128, 240)  '设定所画区域填充蓝色
  Picture1.Circle (mx, my - i), mr, vbBlue, -2 * pi * (map(1) + map(2)), -2 * pi * (map(3) + map(2) + map(1)), rate
 End If
   If map(4) > 0 Then
  Picture1.FillColor = RGB(240, 0, 208) '设定所画区域填充紫红色
  Picture1.Circle (mx, my - i), mr, vbMagenta, -2 * pi * (map(1) + map(2) + map(3)), -2 * pi * (map(4) + map(3) + map(2) + map(1)), rate
 End If
  If map(5) > 0 Then
  Picture1.FillColor = RGB(128, 240, 128) '设定所画区域填充绿色
  Picture1.Circle (mx, my - i), mr, vbGreen, -2 * pi * (map(1) + map(2) + map(3) + map(4)), -2 * pi * (map(5) + map(4) + map(3) + map(2) + map(1)), rate
  End If
 Next
 
 For i = 1 To 5         ' 设定各区间人数所占百分比的数据据式
  map(i) = Val(Format(map(i) * 100, "0.0"))
 Next
  Picture1.FillColor = RGB(208, 128, 128) ' 设定同色的方块填充色----------- 红色
  Picture1.Line (1600, 2700)-(1900, 2400), , B               ' 画小方块
  Picture1.Print Space(3); "优秀:"; map(1) & "%", "(" & Text1(0) & "人)"            '输出标注信息
  
    Picture1.FillColor = RGB(240, 240, 128)  ' 设定同色的方块填充色----------- 黄色
  Picture1.Line (1600, 3200)-(1900, 2900), , B               ' 画小方块
  Picture1.Print Space(3); "良好:"; map(2) & "%", "(" & Text1(1) & "人)"              '输出标注信息
 
     Picture1.FillColor = RGB(128, 128, 240)  ' 设定同色的方块填充色----------- 蓝色
  Picture1.Line (1600, 3700)-(1900, 3400), , B               ' 画小方块
  Picture1.Print Space(3); "中等:"; map(3) & "%", "(" & Text1(2) & "人)"              '输出标注信息
 
     Picture1.FillColor = RGB(240, 0, 208) ' 设定同色的方块填充色----------- 紫红色
  Picture1.Line (1600, 4200)-(1900, 3900), , B               ' 画小方块
  Picture1.Print Space(3); "及格:"; map(4) & "%", "(" & Text1(3) & "人)"              '输出标注信息
 
     Picture1.FillColor = RGB(128, 240, 128) ' 设定同色的方块填充色----------- 绿色
  Picture1.Line (1600, 4700)-(1900, 4400), , B               ' 画小方块
  Picture1.Print Space(3); "不及格:"; map(5) & "%", "(" & Text1(4) & "人)"              '输出标注信息
End Sub

一、医学救援组织实施与评估系统1.具备3D漫游功能;2.基于分布式实时通信协议的互联中间件联合运行模式;3.三维地形数据分辨率≤1米;4.组织指挥模拟培训分系统4.1分系统所使用的仿真引擎自主研发,兼容适配麒麟、方德等国产操作系统;能够提供完全面向对象的组件化建模框架,具有分布式交互仿真模块,并提供配套工具,可与异构系统互联;具有调整运行加速比功能;组织指挥演练人数≥10人同时开展;具有以推演方式对指挥人员进行培训的功能;★4.2适配医学救援环境构建的自组网,对医学救援环境、侦检、洗消去污、医疗救治、作业负荷监测预警等系统集成的业务数据进行抓取、存储、分析与统计展示等;4.3能够接入医学救援环境采集的音视频监控数据;★4.4能够依托医学救援环境构建的自组网和监控体系,下达音频、指挥导调文书等指挥信息;4.5为数据信息提供用户权限控制功能;4.6流程编辑模块4.6.1提供可视化的医学救援组织指挥流程编辑模板,具备流程节点插入、属性编辑、删除等功能;4.6.2提供典型医学救援组织指挥流程的演示动画;4.6.3具备查看医学救援体系、人员杀伤效应、损伤特征等相关知识功能;4.7方案拟制模块4.7.1提供方案要素编辑修改,至少包含基本情况、人员编组、主要任务、救援范围、救援资源等;4.7.2提供可视化的方案编辑界面,具备新建方案、编辑、修改、删除、查询等功能;4.7.3具备依据任务类型、模式、对象不同,对方案进行分类保存等功能;*4.8任务规划模块4.8.1提供可视化的任务规划模板,可以依托可视化编辑框架,对救援任务进行任务分解,设置阶段任务目标,以及各阶段的内在逻辑关联,至少包含时间顺序、空间联系、方法模式、能力因子、边界限制等;4.8.2根据不同医学救援任务背景,具备调用和修改方案等功能;4.8.3提供任务节点属性编辑模板,具备任务实体(医学救援力量)、环境实体、任务触发条件等设置功能;4.8.4具备依据现场伤亡情况进行不同阶梯、不同阶段医学救援力量需求测算及任务分配等功能;4.9路径规划模块4.9.1具备基于路网数据(公路网、铁路网、航空网、动中通)进行路径自动规划、显示等功能;4.9.2具备路径最短、受毒害最少、时间最短等多种原则下的路线设计与选择等功能;★4.10力量部署模块4.10.1提供力量编组模板,可依据任务类型、任务规模等实施编组作业;4.10.2提供多种分析与量算工具,具备部署地域距离、面积、高度等量算,以及坡度、可视范围分析等功能;4.10.3提供上标绘工具,具备救援力量配置与调控的上作业等功能;4.10.4能够对标绘层实施管理,具备培训过程中救援态势动态生成等功能;4.11信息管理模块4.11.1提供信息管理界面,具备信息的分类、新建、编辑、修改、删除、批量导入导出等操作功能;4.11.2具备信息在态势中查询、显隐等功能;4.12导调控制模块4.12.1具备培训背景情况生成与任务设计等功能;4.12.2具备对模拟培训开始、暂停、继续、终止等控制操作等功能;4.12.3具备系统实时监控功能,至少包括任务状态信息监控、指令数据监控、硬件负载信息监控;4.12.4具备对培训者的指挥活动进行调控等功能;4.12.5具备记录回放功能;4.12.6具备以所见即所得的方式在培训场景中进行单个或批量部署实体模型等功能;4.12.7具备用户以拖拽的方式将人员、器材、物资等实体模型部署到场景中等功能;4.13任务场景显示模块4.13.1提供典型医学救援场景≥3种,至少包含所在区域周边地形、建筑、植被、道路等,并融入气象条件(如风、雨、雷、电、雾、雨、雪、尘、季节、24小时光照);4.13.2不低于15种骨干救援器材,三维模型按照实物1:1比例进行制作;操作逻辑、操作方法与真实器材一致;显示界面、显示方式、显示内容与真实器材一致;4.13.3三维场景加载时间≤5s,模型加载响应时间≤2s,训练场景分辨率≥1920×1080,刷新率≥30FPS;4.13.4能够展示单人、班组不同任务状态,并具备第三人称视角监控等功能;4.14地理信息(GIS)服务模块4.14.1能够实现分层展示事件周边救援力量、器材物资配备信息;4.14.2基于GIS技术,具备实现三维形渲染服务和地理信息数据服务,实现二三维救援环境的显示,并提供实时操作反馈及三维视景展示交互等功能;4.14.3实现多源数据接入管理功能(至少包含影像数据、栅格数据、高程数据、矢量数据、模型数据等)、地服务功能(至少包含空间查询、地量算等)、数据服务功能(至少包含统计分析、坐标系转换等)、二三维空间分析功能、二三维动态标绘功能等;5.专业技能模拟培训分系统5.1防护培训模块5.1.1具备开展医学防护模拟培训,至少包括气密性检查,防护时机、类型、等级确定,防护器材选择,防护作业时间估算,解除防护时机确定等培训功能;5.1.2器材操作流程、防护技术要点与实际业务情况一致;5.1.3不少于3种防护器材模拟培训;*5.2侦检培训模块5.2.1具备开展医学救援侦检模拟培训功能,至少包括侦检器材的操作技能,放射性样品采样、化学污染样品采样和生物样品采样等;5.2.2不少于6种侦检器材模拟培训(至少包含γ剂量率仪、表面污染检测仪、生物气溶胶检测箱);5.2.3采样样品形式可选择土壤、水源、伤员伤口组织等形式;*5.3洗消培训模块5.3.1具备开展洗消模拟训练,包括洗消点位置选择和设计培训、进出口设置、洗消区域设置等功能;5.3.2具备≥4种洗消器材开展洗消模拟培训等功能;5.3.3具备洗消相关器材操作流程培训等功能;5.4分类培训模块5.4.1具备开展医学救援分类模拟培训,包括分类理论学习、伤情辨别、分类分级培训等功能;5.4.2提供分类标准、流程、技术等资料;5.4.3具备典型表象、指征等模拟辨别培训功能;5.4.4针对不同类别、不同等级病员,具备标记、分区管理、救护流程等模拟培训功能;5.5现场急救培训模块5.5.1具备开展现场急救培训功能,至少包括救治方式选择、救治流程选择、急救培训等;5.5.2提供防护、急救医学和救治相关技术标准;5.6后送培训模块5.6.1具备开展后送模拟培训功能,至少包括后送批次安排、后送方式选择、后送力量部署、后送途中的指征研判等;5.6.2具备后送计划拟制与后送监控等功能;5.6.3具备后送计划拟制流程可视化功能,至少包括制定后送批次安排、后送方式选择、药品计划等;5.6.4能够动态监测后送途中的病员指征(至少包括心率、呼吸、脉搏、二氧化碳、体温、血氧饱和度)、后送进程等;*5.7半实物交互培训模块具备三维任务场景下的专业行动虚实结合培训等功能;6.培训评估分系统★6.1具备开展组织指挥模拟培训与专业技能模拟培训评估功能,至少包括医学救援资源损耗分析评估、行动趋势分析评估、组织指挥与专业技能培训效果评估等;★6.2具备对侦检、去污洗消、医疗救治的实操培训进行评估等功能;6.3资源损耗分析模块6.3.1具备培训过程的人员、器材、物资损耗情况分析等功能,实现各席位及整体损耗数据的动态更新;6.3.2具备通过直方、表格等形化方式对资源损耗分析结果进行展现等功能;6.4行动趋势分析模块:具备医学救援行动态势分析功能,指挥人员根据二三维态势和资源损耗分析结果,对医学救援资源盈缺、行动部署合理性等做出综合判断,指导下一步行动决策;★6.5培训效果评估模块6.5.1具备可视化评估指标体系设计功能;6.5.2权重配置算法≥3种,至少包含层次分析法、环比系数法等;6.5.3效能配置算法≥3种,至少包含专家赋权法、加权平均法等;6.5.4具备权重算法和效能算法的计算流程配置功能,具备流程化自动运算功能;6.5.5具备通过可视化形式对培训过程中的资源消耗、损耗变化等关键数据和信息的分类统计结果进行展现等功能,展现形式≥3种,至少包括柱状、折线等;6.6复盘回放模块6.6.1具备培训记录功能,记录内容至少包括事件背景、事件发展进程、救援处置过程、污染态势变化、文电通信等;6.6.2能够加载培训记录文件,实现记录回放。 根据以上写第6点的软件需求规格说明分模块(能力需求、用例、用例描述)
03-20
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值