We have recently observed that data sets that have a Value Order property will display means differently in Graph Builder vs. how they are displayed in Tabulate. Submitted below info to Tech Support, who replicated the result described. I think that calculated statistics displayed in Graph Builder should match those provided by Tabulate.
It seems that the presence of a Value Order property causes GB to see the variable as Nominal in order to ensure the values are plotted in the correct place on the axis. That is good. However, I think for calculation purposes, the mean should still rely on the values specified by the Value Labels property, and not the values used to render the graph.
Is there some simple option we are missing that would get Graph Builder to give the same means as Tabulate in this situation? Below my signature is a quick snip of JSL to load a sample data set and run Tabulate and GB against the same column. Note the means are off, with GB means being 1 lower than the Tabulate means (since GB uses 0-based coding but the Value Labels in place here are using 1-based coding). We prefer the Tabulate means.
dt = Open("$SAMPLE_DATA/Consumer Preferences.jmp");
dt:Job Satisfaction << Set Property( "Value Order", {Custom Order( {1, 2, 3} ), Common Order( 0 )} );
dt << Graph Builder(
Variables( X( :Gender ), Y( :Job Satisfaction ) ),
Elements( Bar( X, Y, Legend( 6 ), Label( "Label by Value" ) ) )
);
dt << Tabulate(
Show Control Panel( 0 ),
Add Table(
Column Table( Grouping Columns( :Gender ) ),
Row Table( Analysis Columns( :Job Satisfaction ), Statistics( Mean ) )
)
);