Choose Language Hide Translation Bar

JMP Live 18.0: Communicating JMP Insights Gets Even Easier

JMP Live has always been about taking what you've discovered using JMP and communicating it to other people in your organization, whether they have a JMP license or not. It facilitates presenting JMP discoveries in a way that retains JMP's interactivity, something that PowerPoint simply cannot do. And JMP Live will keep your insights up to date by allowing you to easily schedule data updates that automatically regenerate the reports, keeping them relevant while you sleep.

JMP Live 18.0 adds a set of enhancements that makes all of this easier. JMP Live can now be integrated with your company's Active Directory so that access to JMP Live content can automatically reflect changes in your organization. You can now mention others when commenting on posts, making it much easier to pull others in to conversations about JMP content. You now have greater control over who can access the content in different JMP Live folders. And we have made many additional enhancements to make it easier to navigate around JMP Live and understand what has happened when things go wrong.  

Please join us to see all of the enhancements the team has made.

 

JMP Live 18 is the fourth major release of JMP Live that we have produced in the last six years or so. Each release, we add lots of new features and capabilities. What I want to talk about today is what we've done in JMP Live 18 that's new.

First of all, just a reminder to people in case you're new to JMP Live, what is JMP Live? JMP Live is a web application that lives behind the firewall in your company. It allows you to publish JMP reports and data to it, so that then other people in your organization can see those reports and interact with them similarly to how they can in JMP. But they don't have to have JMP. They just have to have a web browser, and they can view and interact with your JMP reports that you've published.

A really nice feature of JMP Live that was introduced in 17 is this ability to have a script that's capable of refreshing your data so that your report will keep updated based on the latest data that's available. You can do that on a schedule. You can say, I want my data to refresh every Monday at 5 o'clock or every hour at 15 minutes after the hour. Whatever you want to do in terms of scheduling that update, you can do that within JMP Live and your reports will stay up to date with the latest data.

Just as a bit of an overview here, what we're going to do today is walk through JMP Live, just the features of JMP Live in general. As I'm going through them, I will be pointing out things that are new in JMP Live 18. Things like mentioning users in comments on reports, importing data from CSV files, syncing your users and groups in JMP Live from your company's active directory, folder level permissions. We had space-level permissions in 17, now we have more granularity. You can control at the folder level who has access. Then finally, a report interactivity improvements. That is where we've taken reports that come from JMP and improved how they look in JMP Live and how interactive they are to make that a better experience.

All right. We're going to start this process in JMP. Here's JMP. This is a query builder running in JMP that is connected to a PostgreSQL database, and it brings in a bunch of data, and then there's a bunch of cleanup steps here that are going to apply some spec limits and various other things that you need to do when you're bringing data in from a database into JMP. I'm just going to run that.

There's the data in from Postgres. Now, the script that runs also puts a couple of reports in the data table. I'm going to run this one called Reactor ANOVA, and it's going to produce a report. Now, there's some things about this report that captured my attention. For one thing, in this first graph over here, we've got this one-way analysis of catalyst concentration by reactor.

It seems to be a little bit bimodal. There's some concentrations up here and then some down here, and they don't overlap. If I use the data filter and walk through my suppliers of this catalyst, I can see that McMillan seems to have these concentrations that are elevated relative to the other suppliers. There's all the other suppliers, there's Topeka. That seems a little bit concerning to have this bimodal difference in catalyst concentration.

Then on this other graph, we have this critical ratio for our three tanks of our reactor. One of them, Tank B, is considerably significantly lower. The mean of the critical ratio is a lot lower than in the other two tanks. We call it the critical ratio, so it's probably critical. We should probably look into why the critical ratio differs in this tank versus tanks A and C.

I could take a screenshot of this and put it in an email and send it out to people. That's what I would have done before JMP Live. But now that we have JMP Live, we have a lot more options for how we disseminate this report and let other people see it and then draw people into a conversation about it, so we can solve these problems that we appear to be seeing.

To do that, the first step is going to be to publish it to JMP Live. I do File, Publish. I've already created a connection from JMP to my JMP Live server. I click Publish Reports to JMP Live. There's my report. I'm going to publish a new report. Now I have to tell JMP where I want to put the report. I have to pick a space. The space I'm going to use is called Materials. I must have publish access to that space, or it wouldn't appear in that list. Then what folder within that space do I want to put it in? Well, I would like to create a new folder called Demo and put this report in there. That's going to put both the data for my report and the report itself in that folder.

Am I happy with what the title of the report that came from JMP is? Not really. I'm going to change that to Reactor ANOVA and click Next again. This data that I'm publishing is brand new to JMP Live. Nobody's ever published this data to JMP Live before, so I'm going to publish it as a new table into JMP Live. There it goes. JMP has finished publishing this to JMP Live, and we get this summary dialog to tell us what happened. It published a report and some data, and it put them in this folder down here. I'm going to click this Open button, and that's going to open my report not in JMP, but in JMP Live in my web browser.

There it is, just like it was in JMP. I can use the data filter just as I was doing in JMP. I can do that in JMP Live, and I can see what's going on here with McMillan. Let's get Albert out of there. There's McMillan, there's everyone else. All right, so I like this. It's great that it's out here on JMP Live, and hopefully, people will see it. But these problems that I'm seeing in this analysis here seem significant enough that I want to bring them to the attention of a couple of people to make sure they see it. I'm not going to rely on chance for them to happen to look at this report.

A good way to do that, and this is something that's new in JMP Live 18, is I can go to the comments for this report, and I can mention people in the comment to draw this to their attention. I can say, "Hey, @Alessia Russo and @Harry Cain." You may recognize some of these names because all the people in this particular JMP Live instance are National soccer players for various teams or football, I guess you guys call it over in Europe. These are footballers that I've loaded into this JMP Live here.

I'm going to say, "Something seems off with McMillan and Tank B." I'm going to make this comment here with these mentions in it. When I do that, Alessia and Harry are going to get notifications both within the JMP Live application, and they will also get an email that tells them, "Hey, somebody mentioned you in JMP Live, you might want to go look at this." In fact, I have another browser here in which I am logged in as Alessia Russo. You can see that here. If I look in her notifications here, I can see there's a notification, and it says that Alessia has been mentioned in the comment for this report, Reactor ANOVA.

If she clicks on that, it's going to take her right to that report, and she can see the comment that Gareth Southgate made about this thing suggesting that, "Hey, something seems weird with to McMillan." Then she can reply just to let Gareth know she's seen it and say, "Thanks @Gareth. I'm on it." That should satisfy Gareth that I'm looking at this. Of course, Alessia, you can now look at McMillan and look at different suppliers and see what's going on there. Then she can also look at this Tank B over here and see that its critical ratio is low and all that.

That's great. All that can happen. Now, Alessia will presumably take some actions that will hopefully cause this situation to improve. Now, in order to see that, we would need the data for this report to update when new data is available. Maybe in a week or so, all these actions have been taken, so we want to see if there's been any difference based on the actions that have been taken in this report. How can we get the data for this report to be updated so that the report is more current, say, a week from now? There's a couple of ways we can do that. Actually, three ways. Let me close this. The first thing, Gareth is an administrator, so he has the ability to do a lot of things in JMP Live.

He can go… Oops, that was unfortunate. He can go to the data. We've also made it a lot easier to find the data associated with reports in JMP Live 18. I can go over to this data in the left-hand panel over here and click on the name of the data table for this report. I can see the data. Up in the upper right here, you can see there's an Update Data button. If I have gone out and gotten the new data and cleaned it up and gotten it into a JMP data table, I can just use this button if I want to, to bring in new data to replace this data with new data that I have on my machine.

I clicked Update Data. I can go over here to this other version of the data that's a little more recent. Click Open. That will begin loading that data in. If I go over to Reports, you can see that the day report is now regenerating. It'll just take a second here. There it is. Now I've got new data and my report is updated to reflect that. If I look at McMillan now versus the inverse, I can see that McMillan looks like it's still a little bit off. It's not exactly in with the other suppliers, but it's looking better. Then as far as this Tank B goes, the mean of its critical ratio seems to be moving in the right direction. It was down here before, and now it's getting closer to where the tanks are. That's good to see.

Now, let's go back to the data again. I mean, that was fine to update the data the way I did, but it was a manual process. I don't necessarily want to have to come in here and click a button in order to update this data. I want it to just happen every day or every week or whatever the appropriate time interval is. To do that, I would need to go to the settings for the data. You notice that there are three update methods that are available. There's Upload, which we just did, uploading a JMP data table. There's Refresh data via a script. If I can create a script that would go get the data from the database and clean it up, then that would automate a lot of the steps that I have to go through, so that would be handy.

There's also a third approach, Importing data via script. That's if you have a CSV file or an Excel spreadsheet or JSON data or something, and you want to import that into JMP Live. Let's take a look at Refresh data via script first. I'm going to go back to JMP just for a second. Let me close that Results window there and go to the data that I imported from Query Builder earlier. When you use Query Builder to import data, you're going to get a source script in the data table from that. That source script is going to have your connection to ODBC that you use to get the data, the exact query that you used. Then if you put all your cleanup steps in the post-query script of Query Builder, then all that's going to be in your source script as well.

The source script that lives in a data table is a great starting point for a refresh script in JMP Live. When we bring data from JMP into JMP Live, one of the things we do is we reach into that data table and see if it has a source script, and if it does, we pull out, and we give you the option here of starting your refresh script using the source script from the data table. That can save you a lot of time getting you started. Here it is. There's the connection part, there's the query builder part. Let me save it in here, and then I'll open a larger version of it. Here's the large version of the window. I can go in here and edit this as much as I need to.

I really only want to change two things. I want to make sure that this script gets the next latest data. I don't want it to bring in the same data that I brought in when I updated from the JMP table. I'm going to change the query name and then go down here and change the table from three to five JMP Live, and that will bring in a later version of the data, so we can actually see something change. Now, I need to do one other thing as well. When you use Query Builder or any ODBC connection to get data, you need credentials in order to have access to that data to be able to bring it in. Now, we don't put the credentials, we don't hard code them in the script.

That's not safe. Instead, in JMP Live, you can assign credentials to this data refresh here so that whenever it runs the script, it will have access to these credentials. These credentials are stored securely in JMP Live and then transferred securely over to JMP so that it can use them in the refresh. I'm going to click on Assign here. I already have entered this credential into JMP Live, so I'm just going to select it and save it. All right. My refresh script should be ready to go now. If we had more time, I could schedule the refresh, which is really what I will ultimately do.

I will create a schedule for this refresh script. I can click Create here. Let's say that every day at 07:00 AM or 0700 hours, whatever you guys use in Europe, every morning at 07:00 AM, Monday through Friday, I don't need it on the weekends, I want this refresh script to run so that when I get to work, my data is all updated and my report will be ready to go with the most recent data. If we had till seven o'clock in the morning, I would just let that go, and we would wait and have it refresh. But since we don't have that, I can also do an on-demand refresh that runs this script.

I'm going to go ahead and do that now just so you can all pretend it's seven o'clock in the morning and this is happening automatically. It would be the same thing. I run that, I go to my reports, and again, the data has now updated, has now refreshed from the database. Here it is. My report is now updated to reflect that new data. Here things are looking a lot better. If you look at the critical ratio graph, the critical ratio looks pretty much indistinguishable or certainly not significantly different between my three reactors. Then, if I look at my McMillan supplier of this catalyst concentration versus everybody else, it looks like it's very much in line. Things are looking a lot better.

That's two ways you can update data. One is to just upload a JMP data table. The other is to create a refresh and schedule it, hopefully, so that it happens automatically. There's a third way that's brand new in JMP Live 18, and we will go to the data table. In fact, we're going to do a different example for this. But this is the ability to upload data in text file format like CSV or JSON format or an Excel spreadsheet, various text formats, so that people who don't have JMP Live can still upload data into your JMP Live. The use case that we've seen in a lot of our customers and prospects for JMP Live is they have suppliers.

Who needs to upload data about what they're supplying to the company, and they don't have JMP, so they don't have the ability to create a JMP data table, but they do have CSV. They can probably take an Excel spreadsheet, export it as CSV, and they can upload that into JMP Live. That was the use case behind this idea of being able to upload textual data. Now, the data that we're going to upload is in this Supplier Upload space. This is a space where I keep all of the data and reports that are uploaded by my suppliers. I have under the Topika supplier, this is the supplier we care about right now. We have a report here about the PH level of whatever it is they're supplying to us. I'm going to go to the data for this report. Here it is.

If I go to the settings, I've already set this up in advance, but I've said that I selected Import Data via Script as my update method for this table. I have selected that I want the data coming in to be a CSV file. I don't want it to be XML or SAS or JSON or Excel because my script that I've entered down here is assuming that it's coming in as CSV. That's what I want people to upload if they're doing this. Then just like with the refresh script, I have an import script here that came from JMP that knows how to import a CSV file that has the matching columns and everything that I need into JMP Live.

That's all ready to go. Now I just need for my supplier to upload the data. Now I have a different browser over here that is logged in as my Topika Supplier, the person who does this uploading. If I look at the spaces list that he has access to or she, the only place they have access to in my whole JMP Live is this one space called Supplier Uploads. They click on that. Here's the Supplier Upload space. The other interesting thing is only one folder appears here, the Topika folder.

When I was doing this as the administrator over here, you can see there are actually five folders in Supplier Uploads, but I don't want my Topika supplier to see what my Albert supplier or my MacMillan supplier is doing, so I have restricted the access to the Topika folder so that only the Topika supplier has access to it. None of my other suppliers are listed here. That's a way to restrict access to a specific folder to one or more specific people. Here's that supplier. As the supplier, I can go back to that report… and I can go to the data for this report.

I can't get to the settings because I don't have the permission to see the import script or write it or change or anything. The only thing the supplier has access to do is to go ahead and import the data. The supplier can click Import, and that will prompt them specifically for CSV files since that's what I said I wanted. I'm going to pick this Supplier_ph2 CSV file and open it. That will begin the import process. If I go over to this control chart here, once the data is uploaded, it will update the control chart to reflect the new data. It looks like there might be some issues with this batch of supply that this supplier has sent me.

There's some out-of-control below the control limit down here and some out-of-control points above over here. Something may have gone wrong in this particular shipment, so I need to take care of that and talk to my supplier about that. We'll imagine that that happened and let them update new data for a new shipment. This time we'll bring in Supplier_ph3, go over to the control chart, and once that finish is updating, it will update the control chart. With this batch, everything looks good. Importing data as CSV or other text file formats is a great way to allow people outside your organization to be able to upload data into your JMP Live instance.

That is in, if they don't have JMP, they won't have the ability to do JMP data tables, so they can upload CSV, Excel files, et cetera. All right, so that is importing CSV data. Now, let's go back to this whole permission's thing here because as we described, this administrator was able to control who has access to the Supplier Upload space. It's these people here. Then he was able to also decide who could see the Topika folder, restricting that just to the Topika supplier. If I wanted to add more people to this, or more people or groups, because either users or groups can be added, I could go down here and click, and I have a lot of… excuse me. A lot of users in my JMP Live system that I could add in. I also have a lot of groups.

As I may have mentioned, all the people in this JMP Live instance are football players. There's goalies from the France men's team, that's one group. There's Germany's defense players are in this group. A lot of different groups, a lot of different users that are in this JMP Live system. As the administrator, I can go over to the user section here, and I can see all the different users that have access to this JMP Live instance, and there's close to 200 of them. There's also a bunch of groups, maybe 30 or so groups.

How did all this stuff get in here? Did I type all this in? Did I come in here and create all these groups manually and assign all these individual people into these groups? No, I did not. That did not happen. In JMP Live 17, that's really what you may have had to do to get people into JMP Live. We had some ways to import CSV, but that didn't work. That wasn't a great way to do it either. In JMP Live 18, we have a great way to bring people from your organization into JMP Live. It's called Active Directory sync.

I'm fairly certain that in all your organizations, somewhere there is an Active Directory Server or an LDAP server or something that contains a list of all of the users in your organization. This gives people the right to log in. It gives people access rights to certain applications in your organization. There are also a bunch of groups defined in your Active Directory that maybe start at the division level, and then there's department-level groups and maybe sub-department-level groups, maybe some ad hoc groups that are all defined in your JMP Live.

For example, in this JMP Live, a specific set of groups that I'm interested in are groups that are based on people's position on the football field, defense people, forwards, goalies, midfielders, that thing. If you've got all this stuff already organized in your Active Directory, wouldn't it be great to be able to just bring that organization right over into JMP Live so that that same organization would be present there as well. Well, with JMP Live 18, you can do that. Just going to switch back over to JMP Live here.

There's another tab or another item on my administrator menu here called Sync. I realized that people listening to this are probably not the people who would actually do this in your organization, you'll probably have IT assistance. There is some fairly hairy configuration you have to do to allow JMP Live to talk to your Active Directory. But once you get that set up, you can then go in and search for groups that you want to bring in to JMP Live. It could be that you don't want your organization to be coming in to JMP Live. There may be certain groups that, maybe they work on the landscaping or something, they don't really need JMP Live for anything, so you wouldn't bring them in.

But if I wanted to bring in, for example, people from the Brazil organization, like the forwards from the Brazil men's team or the goalies from the Brazilian women's team, I could just check these boxes, and then those would be added to this list of groups that I've already brought in. Here's the list of groups I selected I did a few weeks ago when I did this. Those are the groups I wanted to be in JMP Live, and I clicked Sync over here, and it took a minute or two, but that brought all the users and all the groups from all of those, from Active Directory and created the same groups and users in JMP Live, so I ended up with all these users and all these groups.

After you've done that initially, you can also set up a scheduled sync so that every week or two, these same groups will be synced from your Active Directory again. If anybody's moved around in the organization, maybe a midfielder got, I don't know if it'd be a promotion or a demotion, but if they got moved up to the forward position, in your company, then they would need access to things that forwards need access to now and not things that midfielders need access to. Well, with Active Directory sync, that will all be kept up to date automatically.

Now, once everyone's in here, the administrator has the flexibility to go to, for example, the reactor space. This is a space that contains information. We have reactors in six different countries. In this space, we allow midfielders to have a lot of control over what happens here. They can contribute, they can do data administration and data import. They have a lot of high level of access to this entire space. Now, it could be that for the Spain reactor, we really don't want all the different people from different countries to have the same access to Spain's reactor information that they might have in their home country's reactor.

I can go in here for the Spain folder and apply Custom Permissions. Right now, the permissions for this folder come from the reactor space, but I can apply custom permissions, and I might say, "Well, I don't want these midfielders here to have... I want them to just have view access." Then for... Let's get the Spain midfielders, the men and the women midfielders, let's get those groups in here, and we'll give them more complete access since this is the Spain reactor after all, so this is the one that they should have the most access.

This ability to have permissions on a space but then refine those permissions at the folder level all the way down the hierarchy, this is also a new feature of JMP Live 18. There's one other thing that we try to improve on every release of JMP Live, and that is the fidelity of reports that are coming from JMP into JMP Live. In order for a report to perform well in JMP Live, it has to be rewritten in JavaScript, and it has to be... a lot of work has to be done to allow it to be interactive in JMP Live.

This, for example, is JMP Live 17, and this is a contour plot. You notice when I hover over the plot, I get a pop-up that says this feature is not interactive. Contour plots in JMP Live 17, we had not yet converted them to JavaScript, so we could not... There was no way to select points in them or hover over points and see what the value of the point was. There was nothing you could do. All you could do was look at a static snapshot of the report.

In JMP Live 18, this is no longer the case. We have done the work to convert contour plots to JavaScript, so I can now hover over points in contour plots and see the values that somebody put it set as label columns. I can even select, suppose I wanted to select these points and exclude them from the analysis and see what the contours look like without them. Well, I can do that as well because this report is fully interactive now, contour plots. Another report that we've done a lot of work on is distribution, one of the most commonly used reports in JMP, common analysis.

Distribution was fairly functional already in 17, this is 17. But one thing you could not do is you couldn't select in the Frequencies table. The Frequencies tables in JMP Live were static or not interactive in JMP Live 17. That's something that has improved in 18. I can now go into the frequency table and say, Select Smith and see where they are in all the bars, and I could take off the bond-incorporated stuff, and I could only look at things that are rejected, those sorts of things.

I now can use the frequency tables to select rows in my table just like you can in JMP. That's a new thing. You may also have noticed that these pattern fills, this is now the pattern fill that matches JMP, this herringbone or striped pattern. You can now see that in JMP Live just like you do in JMP. Something else that's new in distribution is you'll notice that there's no hamburger menu next to these titles up here in these graphs, Whereas in this version, the JMP Live 18 version, there are hamburger menus up there or kebab menus, I guess we call them.

If I click on that, I have the ability to stack these graphs. If I click on a categorical distribution or nominal, I guess it is, I can turn on a mosaic plot. I can set some histogram options to turn on counts, for example. In a continuous one, I can turn on a CDF plot, for example, and also I have the same Histogram options. We just added, we're starting to bring some red triangle menu options that you're used to in JMP over into JMP Live so that you can interact in similar ways that you can in JMP.

It's still very early on. In fact, you can't even really save the report this way. Somebody else, when they came in, they would see it this way. You would have to go back to JMP and do that. If I refresh this page, it goes back to the way it was. But that's something that we probably will be looking into in a future version of JMP Live to allow you to make changes and save the results so that other people can see what you've done. An improvement that I'm quite happy with has to do with data filters.

Here's a report, a dashboard in JMP Live 17 that has two data filters, one for this graph and one for this graph. This data filter here is interactive. I can click on Macmillan, and it regenerates and selects Macmillan or excludes everything that's not Macmillan, or I can do the inverse of that. This data filter here, though, I can't do anything with it. I click on it, nothing happens. That's because before JMP Live 18, you could only ever have one data filter that was interactive in any report or dashboard. That was a limitation that we've had for a number of years.

But with JMP Live 18, John Powell, who you may know, went to work and made it so that reports now can have multiple data filters. One thing you notice, by the way, right off the bat is this report, the spacing of this report is much better than the 17 one. This one got cut off. In 18, we're doing a better job of spacing the reports so that you see them both without having to use scroll bars. That's a handy thing. But I can, again, click on this data filter, and I can also click on this data filter over here, so both data filters are active, and they affect whatever table they're connected to. But that's a nice thing to be able to have a dashboard with multiple data filters, and they're all interactive in JMP Live.

Another really important feature of JMP, really valuable innovation in JMP, is profilers. Here's a profiler, a prediction profiler from JMP Live 17, and it is interactive in this case. You may not notice, but it's missing confidence intervals. It's nice to have confidence intervals when you're moving around these profilers and understanding the interactions. Well, in JMP Live 18, the same profiler, I'm going to make it a little bit bigger, does include both confidence intervals and prediction intervals. You have both access to both of those in the graph.

As I move, I see not just what happens to the main line in each of the other profiler graphs, but I also see what's happening to the confidence intervals and the prediction intervals. That's very handy. In other cases for profilers, in this case, this is another prediction profiler, but in this case, the prediction profiler is not interactive at all in JMP Live 17. There's nothing I can do. I can't move anything. All I see is a static snapshot, which really makes a profiler not all that valuable. Whereas in JMP Live 18, again, I have both the confidence intervals and the prediction intervals, and I can interact with the profiler and see what happens when I change different things, different factors. Really helpful to have more and more profilers interactive in JMP Live. A non-interactive profile just really is I think, terribly valuable, as I said.

Just going to go back to my slides briefly to sum up. There we are. Here's what we've gone through today. We did a general overview of JMP Live, and then we're focusing on new features as we went along. We talked about mentioning people in comments, which allows you to bring people into a conversation very easily and make them aware of something. We looked at importing CSV data, which is very helpful if you have suppliers, for example, who can't create JMP data tables. They can only create CSV files or other text files. Active Directory Sync, which allows you to bring your whole organization or whatever part of it you want from your company's Active Directory right over into JMP Live to speed up how quickly you can get JMP Live useful in your organization and get it productive.

Folder level permissions, again, new in 18, allows you to have a lot of granularity over who can see what in a given folder and who can contribute to the folder, who can change things that are in the folder. All that stuff can be controlled with a great deal of granularity. Then finally, those report interactivity improvements we saw just a minute ago with things like profilers and multiple data filters and those things that we were looking at. That concludes my presentation. I'll be happy to take any questions.

Author