JMP 12 seems to have no ability to make row legends unique to charts, instead it is applies across all charts for a given data table. This seems to be because it saves row legend info as a layer on the DT instead of the chart. Is there some way around this besides duplicating data tables for each chart that needs a unique legend?
Many thanks in advance
TheRow Legend is working exacly as it was designed. It allows for the various charts based upon a given data table to show the same colors and markers. The thinking behind this, is that when one is exploring data, they will want to have different views into the data table, and when selections, markers, colors, etc. are changed, you want those changes to appear in all charts. Now, where this is handled a bit different, is in the Chart Builder. Different instances of the Chart Builder can color and mark independently.
So if you do need to have your analytical graphs, Fit Y by X, Variability Charts, etc. to have differing colors and markers, it is not uncommon to replicate data tables, or parts of data tables, to achieve this.
As Jim pointed out, this behavior is by design. It is part of the dynamic linking behavior that is built into the JMP data table and its dependent platforms. The legend is determined by the row state in the data table. It is not determined by the plotting platform. The Rows > Color or Mark by Column command and the contextual plot menu command Row Legend are the same command.
You set a row state for an observation in the data table the way you want it once and everything adopts it. You can always change the row state or return it to default row state. This applies to a single row, a group of rows, or groups of rows.
It seems to me that if you want to have different legends on your plots, then you are going to have to specify each legend individually for each plot anyway, so what is the problem?
Note, too, that row state is a valid data type so you can set the row state for one plot and save it in a data column. Change the row state for the next plot and save it in another data column. And so on. You can later re-instate the saved row state in the data column to the row state in the data table when you want. If you are into scripting, then this process could be automated. It actually isn't that bad if you have to do it manually.
Thanks for the points. I understand the usefulness of having symbols and colors popular all graphs but I also see equally useful the ability to not do that. So I think it should be an option. It's come up many times in my group here at Intel where we are plotting lots of different columsn against each other in various ways.
Could you give me more details on the row state data? What is the jsl script for saving row state to a column and how does that get used for unique legends?
First of all, to understand row states, see Help > Books > Using JMP, Chapter 5. Also, Appendix A has a section about the row state functions that will be useful.
Second of all, to script these actions, see Help > Books > Scripting Guide, Chapter 9.
Yes I plan to script them. I was hoping you knew the script for setting a row state and then applying it to the row legend.
I still fear however that multiple graphs from the same data table won't be able to use different row legends just because you've added row state columns.