可能有更好、更简单的方法来执行此操作,但这适用于 Big Class.jmp:
将年龄放在 X 轴上,把身高放在左边 Y 轴上,把体重放在右边 Y 轴上,
我创建了两个变换列 h = age - 0.2 和 w = a + 0.2 并将它们向下拖动到 X 轴。
在控制面板的变量部分下,我取消选中顶部栏部分的 w 和底部栏部分“栏(右)”上的 h。
我将两者的栏样式设置为子弹。
这是结果:
Two Y Axes, Offset BarsTwo Y Axes, Offset Bars两个 Y 轴,偏移条
如果您不喜欢 X 轴标题的外观,可以单击它并将其改回“年龄”。
如果你想尝试自动化它,这里是 JSL:
Graph Builder(
Size( 550, 682 ),
Variables(
X(
Transform Column(
"w",
Format( "Fixed Dec", 5, 0 ),
Formula( :age + 0.2 )
)
),
X(
Transform Column(
"h",
Format( "Fixed Dec", 5, 0 ),
Formula( :age + (-0.2) )
),
Position( 1 )
),
X( :age, Position( 1 ) ),
Y( :height, Combine( "Parallel Independent" ) ),
Y(
:weight,
Position( 1 ),
Combine( "Parallel Independent" ),
Side( "Right" )
)
),
Elements(
Bar( X( 2 ), X( 3 ), Y( 1 ), Legend( 6 ), Bar Style( "Bullet" ) ),
Bar( X( 1 ), X( 3 ), Y( 2 ), Legend( 8 ), Bar Style( "Bullet" ) )
),
SendToReport(
Dispatch( {"Bar"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Bar (right)"}, "", OutlineBox, {Close( 0 )} ),
Dispatch(
{},
"weight",
ScaleBox,
{Min( -0.38265306122449 ), Max( 150 ), Inc( 25 ), Minor Ticks( 0 )}
)
)
)
这是在 JMP Public 上。
它不是交互式的,因为:
Combine( "Parallel Independent" )
如果我把这些线去掉,它仍然可以工作并且它在 JMP Public 上是交互式的,但是这些条更粗并且重叠。
我设法做了两个酒吧,但现在的挑战是将它们放在一起,而不是在完全相同的地方。 我只能找到在哪里更改条的宽度..