It sounds like what you want is a scatterplot with true on the x axis and reported on the y axis. You don't need to combine the values into a single entity, just use the appropriate variables on the appropriate axes in creating the scatterplot. You can also add an identity line to the graph using GPL (Graphics Programming Language) command syntax.
For example, with two variables, "true" and "reported", the following command creates a scatterplot with the identity line, for data with range 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.
Everything except the last three lines right before END GPL.
comes from a standard scatterplot fitting in the Chart Builder.
DATA: x = iter(0,100,100)
computes internal data for a variable x that iterates from 0 to 100 in steps of 100. That of course means just two values, but that's all you need to define a straight line.
TRANS: y = eval(x)
computes internal data where y=x.
ELEMENT: line(position(x*y))
plots a line based on x and y coordinates.
So you can start with any data you have, use the Chart Builder to create your scatterplot code, paste it into a syntax window, and add the DATA
, TRANS
, and ELEMENT
statements to the GPL to add the line. You'd of course change the values in the iter
expression as necessary.