SPSS – 堆积条形图百分比

作者:Ruben Geert van den Berg,发表于 SPSS 图表 SPSS 堆积条形图 - 应用模板示例

创建带有百分比的 SPSS 堆积条形图(如上图所示)非常简单。但是,弄清楚正确的步骤可能需要花费大量的精力和挫败感。因此,本教程展示了如何一次性正确地完成它。 我们建议您按照 course_evaluation.sav 进行操作。这些数据的一部分显示在下面的屏幕截图中。

练习数据文件截图

示例:按学习专业划分的课程评分

假设我们要可视化学习专业(名义变量)和总体课程评分(顺序变量)之间的关联。一个可以给我们一些启示的表格是一个显示列百分比的列联表。我们将通过运行下面的 语法 (syntax) 来创建它。

***只在输出中显示标签。**
set tnumbers labels tvars labels.

***带有列百分比的交叉表。**
crosstabs q1 by major
/cells column.

结果

SPSS 堆积条形图 - 交叉表

我们的课程最不受学习“其他 (Other)”专业的学生的欢迎。你能分辨出哪些学生最喜欢我们的课程吗? 无论如何,正是这个表格我们将可视化为一个图表。我们将按照接下来的五个屏幕截图来完成。

SPSS 图表构建器对话框 (Chart Builder Dialogs)

SPSS 堆积条形图 - 菜单 SPSS 堆积条形图 - 选择基本图表 SPSS 堆积条形图 - 设置测量级别

我们的堆积条形图需要将测量级别设置为名义 (nominal) 或顺序 (ordinal)。您可以在打开图表构建器之前(可能先执行 TEMPORARY 命令)或图表构建器内部执行此操作。当使用第二个选项时,所选的测量级别仅适用于您正在创建的图表。

SPSS 堆积条形图 - 添加变量 SPSS 堆积条形图 - 转置图表

转置 (Transpose) 相当于将我们的图表旋转 90 度,从而将图表布局从垂直更改为水平。这不是必需的,但与默认的垂直布局相比,水平布局通常更适合各种条形图。 转置图表有两个选项:1) 在图表构建器中(就像我们现在所做的那样),或者 2) 应用 SPSS 图表模板。

SPSS 堆积条形图 - 选择百分比 不要忘记在这里“应用 (Apply)” - 就像我总是做的那样。

上面的屏幕截图显示了为此图表选择正确百分比的步骤。每当在“元素属性 (Element Properties)”对话框中更改某些内容时,不要忘记单击“应用 (Apply)”(我们总是忘记它)。

SPSS 堆积条形图 - 添加主标题 再次:“应用 (Apply)”。

(可选)为图表设置主标题并“应用 (Apply)”它。单击“粘贴 (Paste)”将生成以下语法。 让我们运行它。

SPSS 堆积条形图语法 (Syntax)

***图表构建器。**
GGRAPH
/GRAPHDATASET NAME="graphdataset" VARIABLES=major COUNT()[name="COUNT"] q1[LEVEL=ORDINAL]
MISSING=LISTWISE REPORTMISSING=NO
/GRAPHSPEC SOURCE=INLINE.
BEGIN GPL
SOURCE: s=userSource(id("graphdataset"))
DATA: major=col(source(s), name("major"), unit.category())
DATA: COUNT=col(source(s), name("COUNT"))
DATA: q1=col(source(s), name("q1"), unit.category())
COORD: rect(dim(1,2), transpose())
GUIDE: axis(dim(1), label("您目前的主要专业是什么?(What's currently your (primary) major?)"))
GUIDE: axis(dim(2), label("百分比 (Percent)"))
GUIDE: legend(aesthetic(aesthetic.color.interior), label("您如何评价这门课程?(How do you rate this course?)"))
GUIDE: text.title(label("按学习专业划分的课程评分 (Course Ratings by Study Major)"))
SCALE: cat(dim(1), include("1", "2", "3", "4", "5"))
SCALE: linear(dim(2), include(0))
SCALE: cat(aesthetic(aesthetic.color.interior), include("1", "2", "3", "4", "5"))
ELEMENT: interval.stack(position(summary.percent(major*COUNT, base.coordinate(dim(1)))),
color.interior(q1), shape.interior(shape.square))
END GPL.

未样式化的堆积条形图

SPSS 堆积条形图 - 未样式化

首先,请注意,即使我们的数据中不存在“非常糟糕 (Very bad)”,它也出现在我们的图例中。默认情况下,“图表构建器 (Chart Builder)”包含存在值标签的所有值,无论它们是否存在于数据中。这可能非常烦人:您使用 FILTER 排除的任何类别现在都会在您的图表中重新出现。 其次,我们的图表看起来很糟糕(但是,请参阅 SPSS 25 中的新图表 - 它们真的有多好?)。但是,图表模板是解决此问题的好方法。最终结果如下所示。

样式化的堆积条形图

SPSS 堆积条形图 - 样式化

不幸的是,我们的图表根本没有显示任何关联 - 在完成所有工作之后有点令人失望。但我希望您的图表会有更好的运气!

感谢您的阅读!