It’s World Statistics Day! To honor the theme of the day, the JMP User Community is having conversations about the importance of trust in statistics and data. And we want to hear from you! Tell us the steps you take to ensure that your data is trustworthy.
Choose Language Hide Translation Bar

Glyph in Heatmap Display


is there a way to render something more sophisticated in the heatmap display, such as a glyph.

The glyph would be positioned in the corresponding cell and would allow to see more values at the same time.

I'm thinking about an inner-outer rectangle glyph such as here (left most part)

Thanks Michael


Re: Glyph in Heatmap Display

I was thinking it's not possible because Graph Builder can only have one color variable and doesn't overlay heat maps, but then I tried combining square markers with a heat map, and it creates the desired effect. I'm not sure if it works perceptually, but you can experiment with different size/marker combinations to see if can get your message across.

The main trick is to assign colors to the rows (with Rows > Color or Mark by Column) and tell the Points element in Graph Builder to ignore the variable in the color role (Properties > Points > Variables > untick C2) so only the heat map element uses it. Script below.


New Table( "double heat",

  New Column( "X1", Nominal, Set Values( Mod( 0 :: 59, 6 ) + 1 ) ),

  New Column( "X2", Nominal, Set Values( Floor( (0 :: 59) / 6 ) + 1 ) ),

  New Column( "S1", Formula( Random Uniform() ) ),

  New Column( "C1", Formula( Random Uniform() ) ),

  New Column( "C2", Formula( :C1 + Random Normal() / 5 ) )


Current Data Table() << Run Formulas();

// change the rows to use square markers (could be anything)

For Each Row( Row State( Row() ) = Marker State( "Filled Square" ) );

// Color each row marker based on column C1

Current Data Table() << Color by Column( :C1, Color Theme( "Blue to Gray to Red" ) );

Graph Builder(

  Size( 257, 422 ), Show Control Panel( 0 ),

  Variables( X( :X1 ), Y( :X2 ), Color( :C2 ), Size( :S1 ) ),


  Heatmap( X, Y, Legend( 13 ) ),

  Points( X, Y, Color( 0 ), Legend( 12 ) )


  SendToReport( Dispatch( {}, "400", ScaleBox,

  {Legend Model( 12, Properties( 0, {Marker Size( 6 )} ) )}

  ) )


Article Labels

    There are no labels assigned to this post.