I am looking to use the column switcher, but each column needs a different local data filter. Is there a way to assign a specific local data filter to each column? I have attached a JMP file with the three separate graphs I want with their appropriate data filters, and would like to have one graph using the column swicher to cycle through each. (Column switcher for Temp, pH, and concentration.)
This can be done by Adding a Graphic Script to your Platforms chart or graph. It could trigger based upon the chart changing, which could then delete the current Local Data Filter, and then create a new one with new specifications in it's place.
You might be able to get someone to give you more specifics if you detailed exactly what each of the Local Data Filters would be for each of the variables, Temp, pH and concentration.
Hi @kk,
In some scenarios it may be useful to duplicate the data table using subsets. In this case you would need to control the timing in which subsets of the same table update each other.
Ron
One way is to mimic the desired local data filters using local column transforms, i.e. use a formula to conditionally exclude data. And then apply the column switcher to the "transformed" columns.
Example (JMP 14):
Data Table("jmp question 2.jmp") << Graph Builder(
Size(542, 442),
Show Control Panel(0),
Variables(
X(:Name("Time (hr)")),
Y(:Name("Impurity (pg)")),
Overlay(
Transform Column(
"pH at Temp=23°C",
Formula(If(:Name("Temperature (°C)") == 23, :pH))
)
)
),
Elements(Points(X, Y, Legend(15)), Line(X, Y, Legend(16))),
Column Switcher(
Transform Column(
"pH at Temp=23°C",
Formula(If(:Name("Temperature (°C)") == 23, :pH))
),
{Transform Column(
"pH at Temp=23°C",
Formula(If(:Name("Temperature (°C)") == 23, :pH))
), Transform Column(
"Conc at Temp=37°C",
Formula(
If(:Name("Temperature (°C)") == 37,
:Name("Concentration (U/mL)")
)
)
), Transform Column(
"Temp at pH=8 & Conc=90 U/ml",
Formula(
If(:pH == 8 & :Name("Concentration (U/mL)") == 90,
:Name("Temperature (°C)")
)
)
)}
),
SendToReport(
Dispatch(
{},
"Time (hr)",
ScaleBox,
{Min(-1), Max(35), Inc(5), Minor Ticks(0)}
),
Dispatch(
{},
"Impurity (pg)",
ScaleBox,
{Scale("Log"), Format("Scientific", 12), Min(5), Max(800000), Inc(1),
Minor Ticks(1)}
),
Dispatch({}, "Graph Builder", FrameBox, {Marker Size(6)})
)
);
Thank you all for your quick responses! @txnelson @ron_horne @ms
@ms:
The script you wrote works - it creates the graphs with the data filters that I wanted. However, I am only able to cycle through the 3 graphs 1 time (and then they disappear completely). How would I modify this script to ensure it can continuously switch/cycle through all three graphs like a regular column switcher?
I can't reproduce what you describe. The report produced by the script has a regular column switcher and I'm able to cycle through the three columns multiple times manually or by pressing the the play button.
I am using JMP 14.2 for Mac.
I am using JMP 12 on a PC.
@ms I noticed that the column transform is changing the nominal variables to continuous variables, but I am not sure why that would cause a problem. I am also able to "reset" the column switcher manually by clicking the red arrow underneath the column switcher, next to where it says "3 columns". Could I script this reset?