Tracking events in a dot plot
Hi,
I frequently make these sparse dot plots -- this is tracking a metric over a counting metric, so left to right is further into a test. The ordinate is a one-dimensional spatial location. When we see shapes in the data, we want to know what event may have precipitated them. What we typically do is use Color of an event column. But I'm not a fan because the colors on these small dots can be difficult to see, and not easy to track with eye since they move all around.
I prefer this method, where I attach a line to the axis ... but that means I would have to script it. That's actually where I'm at -- I don't think it would be that difficult, but thought I might be missing something.

I also tried this, where give my events is a certain space on the ordinate axis. So now I know where to look for the events:

Then there is this way, which I don't like because it devotes too much space to the lower chart and I don't seem to be able to re-size it:

Lastly, I've put the events onto a right-side axis with not-great results.
Thank you!
Data Exploration and VisualizationRe: Tracking events in a dot plotmaybe the last one - with different sizes of the plots?
large top one, slim bottom one?

for resizing, just grab the lower edge of the axis and drag it :

Re: Tracking events in a dot plotI have used all of the methods you have suggested and all of them do work quite well (depending on the data and situation). Currently I prefer the option of having second axis for the events as it gives quite a lot of flexibility where to show points/lines/bars.
Re: Tracking events in a dot plotHave you looked at the new Alarm Graph that's part of the Process Screening Platform in JMP 19? Seems like a good fit for what you're trying to do.
Re: Tracking events in a dot plot
@jay_holavarri wrote:
I prefer this method, where I attach a line to the axis ... but that means I would have to script it.
fortunately, in JMP19 there is a new option for line plots:

One can use it to draw arrows:

like in New in Graph Builder for JMP 19
... and one can use it to add vertical lines to a plot "without scripting" : )

use the script to generate the plot and then use Graph Builder to steal the idea.
- The point plot uses the original Y values
- the Line plot uses 2 additional Y values to draw vertical lines - activate the option "within row"
- length of the lnies is defined via min/max
- if(:Lot Acceptance == "Reject", ...) is used to get vertical lines only for "reject"s
Open( "$SAMPLE_DATA/Tablet Production.jmp" );
Graph Builder(
Transform Column(
"max",
Formula( If( :Lot Acceptance == "Reject", Col Max( :Disso ) ) )
),
Transform Column(
"min",
Formula( If( :Lot Acceptance == "Reject", Col Min( :Disso ) ) )
),
Size( 1301, 506 ),
Graph Spacing( 4 ),
Variables(
X( :Blend Time ),
Y( :Disso ),
Y( :min, Position( 1 ) ),
Y( :max, Position( 1 ) )
),
Elements(
Points( X, Y( 1 )),
Line( X, Y( 2 ), Y( 3 ), Ordering( "Within Row" ) )
)
);
Re: Tracking events in a dot plotYou have been able to do this in earlier versions also by utilizing second X-axis. I also like utilizing second y-axis as it gives me the freedom to move it as I want to (useful with points, but can mess with markers on other y-axis)

or make sure it will always fit into the plot and prevent users easily from changing it

Re: Tracking events in a dot plotYes, Bar graphs work as well - even in JMP
But with grid lines activated, it gets difficult to distinguish between grid lines and events.

Graph Builder(
Transform Column(
"event",
Formula( If( :Lot Acceptance == "Reject", 100 ) )
),
Variables( X( :Blend Time ), Y( :Disso ), Y( :event, Position( 1 ) ) ),
Elements( Bar( X, Y( 2 ), Legend( 8 ) ), Points( X, Y( 1 ) ) )
);
Re: Tracking events in a dot plotI tried the Alarm Graph, but as far as I can tell it requires me to make a control chart... My data is spatial so I can't take population metrics of it.