I agree, use cases where ONE row counts 1 seems to be quite obvious - even for entries with multiple response
"Which percentage of the students visited Italy?"
is more likely to be asked than:
"Taking all cases where any of the students visited any country, how often was it Italy?"
I have to admit that I was trapped by the "100%" argument, but after a lunch time discussion about the topic, I will accept that ratios like "Which percentage of the students visited ...?" don't need to sum up to 100%. How to calculate the values?
The strange behavior of counting responses gets even stranger when multiple histograms are combined in one graph:
Graph Builder: multiple response + multiple histograms
Let's assume a school evaluates the sports activities via Jmp. If a student has enough time to travel, she can cheat and boost the scores for her sports activity by orders of magnitude! Watch LOUISE travel the world - and the effect on the statistics of "Basketball":
![multipleResponse_multipleHistograms.gif multipleResponse_multipleHistograms.gif](https://community.jmp.com/t5/image/serverpage/image-id/64208iE2D35607ED50F527/image-size/medium?v=v2&px=400)
ā
![hogi_0-1715702200112.gif hogi_0-1715702200112.gif](https://community.jmp.com/t5/image/serverpage/image-id/64206i1EC2CC5DCC55D997/image-size/medium?v=v2&px=400)
dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );
NewWindow("compare",H List box(
dt << Graph Builder(
Show Control Panel( 0 ),
Variables(
X( :sports ),
X( :countries visited )
),
Elements( Position( 1, 1 ), Bar( X, Legend( 3 ) ) ),
Elements( Position( 2, 1 ), Bar( X, Legend( 8 ) ) ),
SendToReport(
Dispatch(
{},
"",
ScaleBox,
{Min( 0 ), Max( 50 ), Inc( 10 ), Minor Ticks( 1 )}
)
)
);
dt << Graph Builder(
Show Control Panel( 0 ),
Variables( X( :sex ) ),
Elements( Bar( X, Legend( 3 ) ) ),
SendToReport(
Dispatch(
{},
"",
ScaleBox,
{Min( 0 ), Max( 50 ), Inc( 10 ), Minor Ticks( 1 )}
)
)
)));
dt << Minimize Window();
New Window( "",
<<Type( "Modal Dialog" ),
Text Box("Now Let's send LOUISE around the world ...")
);
dt:countries visited[2] = char(as list(1::100)[1])