我如何将(x,y)映射到一个值?

问题描述 投票:-1回答:1

我有一组 "数据清洗 "前后的坐标,主要是调整参与者收集的坐标,使其更好地代表真实值。我想做一个图来描述数据清洗的效果(x轴上为真值,y轴上为报告值)。偏离认同线代表不准确。

如何将坐标表达为一个值,这样我就可以比较它们并有效地绘制这个图?还是有更好的表达方式?

谢谢。

graph 2d coordinates spss
1个回答
0
投票

听起来你想要的是一个散点图,x轴上为真,y轴上为报告。您不需要将这些值组合成一个单一的实体,只要在创建散点图时在适当的轴上使用适当的变量即可。您还可以使用GPL(图形编程语言)命令语法为图形添加身份线。

例如,使用两个变量 "true "和 "reported",下面的命令创建了一个带有标识线的散点图,范围为0-100的数据。

GGRAPH
  /GRAPHDATASET NAME="graphdataset" VARIABLES=true reported MISSING=LISTWISE REPORTMISSING=NO
  /GRAPHSPEC SOURCE=INLINE
  /FITLINE TOTAL=NO.
BEGIN GPL
  SOURCE: s=userSource(id("graphdataset"))
  DATA: true=col(source(s), name("true"))
  DATA: reported=col(source(s), name("reported"))
  GUIDE: axis(dim(1), label("True Value"))
  GUIDE: axis(dim(2), label("Reported Value"))
  GUIDE: text.title(label("True and Reported Values"))
  ELEMENT: point(position(true*reported))
  DATA: x = iter(0,100,100)
  TRANS: y = eval(x)
  ELEMENT: line(position(x*y))
END GPL.

除了最后三行以外的所有数据 END GPL. 来自于图表生成器中的标准散点图拟合。

DATA: x = iter(0,100,100) 计算一个变量x的内部数据,以100为步长从0到100迭代。当然这意味着只有两个值,但这是你定义一条直线所需要的全部。

TRANS: y = eval(x) 计算内部数据,其中y=x。

ELEMENT: line(position(x*y)) 根据 x 和 y 坐标绘制一条直线。

因此,你可以从你所拥有的任何数据开始,使用图表生成器来创建你的散点图代码,将其粘贴到语法窗口中,然后添加以下内容。DATA, TRANSELEMENT 语句添加到GPL中。当然,你也要改变一下 iter 必要时,表达。

© www.soinside.com 2019 - 2024. All rights reserved.