客户想要构建一个图表,其中有一个堆积条形图和条形上方的点。我已经使用 Big Class 模拟了一个示例(请参阅下面的脚本)。我可以通过在性别中嵌套年龄并在颜色角色中包含年龄来接近她的需求,但无法获得不同颜色或图案的堆叠条。第二个图形在叠加角色中具有年龄,但点不在条形上方 - 客户非常喜欢条形图上按年龄划分的颜色阴影以及堆叠 Y 变量的不同颜色。所以必要的元素是:
- 点以上的酒吧
- 能够在栏中查看堆叠的 Y 变量
- 表示年龄的能力
客户图比我的示例更复杂,因为它是按 Y 和 X 变量分组的网格。
Names default to here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// New formula column: height+weight
dt << New Column( "height+weight",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula( :height + :weight )
);
dt << Graph Builder(
Size( 822, 623 ),
Variables(
X( :sex ),
X( :age, Position( 1 ) ),
Y( :height ),
Y( :weight, Position( 1 ) ),
Y( :"height+weight"n, Position( 1 ) ),
Color( :age )
),
Elements(
Points( X( 1 ), X( 2 ), Y( 3 ), Legend( 5 ) ),
Bar( X( 1 ), X( 2 ), Y( 1 ), Y( 2 ), Legend( 6 ), Bar Style( "Stacked" ) )
)
);
dt << Graph Builder(
Size( 570, 619 ),
Variables(
X( :sex ),
Y( :height ),
Y( :weight, Position( 1 ) ),
Y( :"height+weight"n, Position( 1 ) ),
Overlay( :age )
),
Elements(
Bar( X, Y( 1 ), Y( 2 ), Legend( 4 ), Bar Style( "Stacked" ) ),
Points( X, Y( 3 ), Legend( 5 ) )
)
);
试试这个:将 y 变量添加到 y 轴两次。 一次作为一个栏,然后右键单击并添加点。 然后是高度,或者你在 Y 上的任何变量是条形图,还有点。 如果点在条形上方,他们将能够看到它们。
我用这个数据做到了:

这对他们想要的东西有用吗?
这些点是与图中堆叠的不同的 Y 变量,所以我认为它不会起作用。我确实玩过这个想法,但它似乎并没有奏效。
你能把不同的 Y 变量放在 Y2 轴上让它工作吗? 同时还将其添加到叠加或颜色角色中?
点仍然不会在条形上方 - 因为由分类变量覆盖将分隔条形而不是点。
在我看来,客户想要对颜色做太多事情:每个条形中堆叠元素的颜色不同,同时还有按年龄连续的颜色渐变。 我们只是不这样做。
也许鼓励客户找到一种不同的方式来表示年龄或堆叠叠加。 颜色不能同时用于两者。
我认为问题不一定是颜色;下面是一个图表,其中颜色已用于类别,以及 :weight(颜色或按列标记)的连续渐变。 虽然不确定这是想要的。

我认为所需的图形在每个堆叠的条形中会有不同的颜色,然后是这两种颜色在不同条形上的渐变。 据我所知,这在图形构建器中是不可能的。