Tuesday, September 28, 2010

Using Custom WMS Maps in JMP 9

Man, this took a while to figure out. I almost had to bust out WireShark to get things working.

Graphs in JMP 9 can use the new Background Map feature. If you have an X co-ordinate and a Y co-ordinate on a graph (or your table has place names that reference co-ordinates in another table), you can use various map servers to provide a background map for your graph.

JMP 9 comes with two built in world maps, and the NASA maps seem to be working now. NASA maps are good enough for rough city level data. The built-in maps are not very detailed. For example, you can't zoom down to city level, at least in Canada.

So, I decided to use one of the Canadian federal government's free Web Map Service servers to get a detailed map of Vancouver.

I'll throw up a video soon, but for now, here are the basic steps to use a custom WMS map of Vancouver in JMP 9:
  1. Open a data table that has co-ordinate information in it (ie longitudes and latitudes).
  2. Open Graph Builder and drag your longitude column to the bottom of the graph, and your latitude column to the left of the graph.
  3. Right click your graph, and choose Graph - Background Map...
  4. Select Web Map Service, and set the URL to this:

and set the Layer field to feature_names,hydrography,vegetation

[You can see the full version of the map here]

The above is Natural Resource Canada's WMS map server. It only works for Canadian co-ordinates. Other WMS servers are available. And now you have a nice detailed map of Vancouver.

JMP 9 would be better if it saved your custom WMS URLs, showed error responses from the WMS server, and showed a selectable list of all the available layers. There is now a JMP add-in called "WMS Explorer" that does this.

I'll post more soon about integrating Vancouver data with maps.

Thursday, September 23, 2010

Using JMP 9 and R Together

An R Graph in JMP

JMP 9 is now able to talk to the popular open source statistical software R.

JMP Scripting Language (JSL) is what allows JMP and R to work together.

Here are the most useful JSL functions for R:

//initialize the R session: 

//send a JMP object to R:
int RSend(JMPObject)

//get an object from R:
object = RGet(RVariableName)

//submit R code to R for processing: 
int RSubmit(RCode)

//get the last graph made by R:
picture = RGetGraphics(format)

//terminate the session: 
int RTerm() 

Here is a simple program:
  • Open a sample table in JMP
  • Send the data to R
  • Make a scatterplot matrix in R
  • Return the graph to JMP and display it

//open a JMP table:
dt = Open("$SAMPLE_DATA/Big Class.JMP", invisible(true));

//initialize the R session (R must be installed on your computer):

//send the JMP data table to R:
result = RSend(dt);

//execute the R code. Make a scatterplot matrix:
RCode = "plot(dt)";
result = RSubmit(RCode);

//get the plotted graphic from R:
graphic = RGetGraphics(png);

//plot the graphic in JMP:
NewWindow("Graph from R", PictureBox(graphic));

//terminate the session:
result = RTerm();

Easy huh? The graphic at the top of this posting was done via the above code.

Wednesday, September 22, 2010

JMP 9 Review and Video Preview

Got myself a copy of JMP 9, fresh off the press. I'll give you some details about the software, and walk through the new features with some videos.

Download & Installation

   1. Download size is 352 MB for Windows, 236 MB for mac.
   2. 32 and 64 bit Windows is supported
   3. A 30 day trial will be available.
   4. Installed size is 325 MB on Windows, with one language, and none of the add-ons
   5. Online activation is required
   6. There is a new product called JMP Pro that includes extra features, such as boosted trees.
   7. Language support includes:
         1. English
         2. Japanese
         3. Simplified Chinese
         4. French
         5. German
         6. Italian

Starting JMP 9

   1. The first time you start it, JMP 9 will ask you if you want to import your customized menus from previous versions of JMP, which is nice of em.
   2. There are some changes to the main window and tool bars. See screenshot below
   3. You can find new JMP add-ins at
   4. Windows are “non-modal” now. For example, if you minimize all windows, your JMP starter will be its own icon on the task bar

The JMP Home Window

Initial Thoughts
  • The Excel Add-In Profiler could be simpler by setting the output only field, and automatically using all input fields related to that function. This is what DecisionTools TopRank tool does. 
  • I like the preview windows in the Home Window, but I find switching between windows a bit confusing. I'm sure I'll figure it out.
  • R integration in JSL seems straightforward. I'll put up a video soon.
  • Not sure I like the idea of JMP Pro. It's nice to have one version of JMP and get all the features. 
  • Mapping in Graph Builder should be sweet, but their map servers aren't up yet, so I'll have to figure out a way around this for now. I'm looking forward to a map/bubble plot combo.

Video: JMP 9 Excel Add-In Basics

Video: JMP 9 Excel Add-In Profiler

Tuesday, September 21, 2010

What is the Work of Dogs In This City?

What are the top industries in the City of Vancouver?

Knowledge workers include information, finance, insurance, real estate, science, management, and admin.
Obviously, there is not much mining going on in the city, but many mining companies are located here.

Digging deeper, what are the top sub-industries?

Automobile Dealers is slightly misleading, as Jim Pattison Group is a large and diversified company but is classified as an Automobile Dealer.

What are the most profitable industries in the City of Vancouver?

Looks like it pays to mine gold! These numbers are in thousands of dollars. 

What are the most profitable companies in Vancouver?

Those numbers are in thousands of dollars, so Teck made $2.655 billion. Finning is a company that sells and services Caterpillar equipment.

What is the highest revenue numbered corporation, and who is it?

417289 B.C. LTD had 2009 revenues of $126 million, has 800 employees. Care to guess who it is? The answer is at the bottom.

What is the biggest holding company in Vancouver, and who is it?

Shato Holdings had $958 million of revenue in 2008 and 6000 employees. Who is it better known as?

More Coming!


Numbered: Concord Security
Holding: White Spot. But Shato owns many other companies as well.

Tuesday, September 14, 2010

JMP 9 Discovery Summit is in Progress

Some new features that I haven't mentioned:

  • Default local variables in scripts
  • Turn script into add-in. New Add-Ins menu and filetype
  • JMP will use 8 cores if you have em
  • Can colour individual cells in the datatable
  • Alias-Optimal experiments
  • Excel Add-In lets you do Monte Carlo in Excel
  • Random Forests
Live blog of John Sall's talk

Monday, September 13, 2010

New info on JMP 9 pricing, and a slightly new due date

Looks like SAS realized that October 9 was a Saturday, so now JMP 9 will be out October 12. Pricing seems to be up slightly, comparison coming. Features as expected.

Thursday, September 9, 2010