我想根据 libreoffice-calc 文档中的数据创建图表,显示考试结果。例如,一列包含从 0 到 100(达到的分数)的数字,我想指定范围,如 0-10、10-20 或类似的范围,并制作一个条形图,显示该列中有多少条目位于给定范围内。自动计算平均值并将其显示在图表中将是一个额外的功能,但并非绝对必要。有什么想法可以实现吗?
答案1
通常,我建议创建一个辅助表来进行计算,并根据该辅助表创建图表。要计算小计,您可以使用 SUMPRODUCT。SUMIF 也是可行的,但您必须手动为每个小计创建公式。
我将用一个简化的例子来演示解决方案:分数从 1 到 15,有三组小计(1-5;6-10:11-15):
帮助表如下所示:
最小/最大值将用于范围标签以及计数。范围标签是使用简单的连接创建的:
=CONCATENATE(A20;" to ";B20)
SUMPRODUCT 公式如下所示:
=SUMPRODUCT($A$2:$A$16 >= A20; $A$2:$A$16 <= B20; $B$2:$B$16)
(两个公式均适用于第一个范围1 to 5
)
生成的帮助表如下所示:
现在,您可以根据以下内容轻松创建图表C19:D22
:
由于范围是由单元格值设置的A20:B22
,因此您可以轻松修改结果集和图表。将该示例适用于其他原始数据应该没有问题。
答案2
对于问题的第一部分,我只想使用 FREQUENCY 函数。
你可以设置一列(如果你的数据是列的话),其中包含考试组的下边界,例如 0 10 20 49 100
并在其右侧列中,借助函数向导在第一行输入 FREQUENCY 函数。
为了绘制图表,您可以打开图表向导,选择柱形图,并使用第一列作为标签,第二列作为数据列。
这应该够了吧。