Heat map + Numbers: Difference between revisions
No edit summary |
No edit summary |
||
| (One intermediate revision by the same user not shown) | |||
| Line 1: | Line 1: | ||
go back to [[Main Page]], [[MATHEMATICA]], [[Scripts]] | go back to [[Main Page]], [[MATHEMATICA]], [[Scripts]], [[Scripts for Mathematica 8]] | ||
First we write down the First Matrix, in which every number will be substituted by a color | First we write down the First Matrix, in which every number will be substituted by a color | ||
| Line 37: | Line 37: | ||
p1 = c1[ [1,2;;All] ] | p1 = c1[ [1,2;;All] ] | ||
Finally with the ImageCompose function, we overimpose the | Finally with the ImageCompose function, we overimpose the numbered table to the colored one | ||
ImageCompose[ | ImageCompose[ | ||
Latest revision as of 15:41, 6 July 2012
go back to Main Page, MATHEMATICA, Scripts, Scripts for Mathematica 8
First we write down the First Matrix, in which every number will be substituted by a color
N.B. The table contains also the Legend.
c1 = {
{"Esol", "Ir", "Ru", "Sn", "Ti"},
{"IrO2", 0.00, -0.14, 0.80, 0.37},
{"RuO2", -0.10, 0.00, 1.03, 0.69},
{"SnO2", 0.54, 0.43, 0.00, 0.17},
{"TiO2", -0.71, 0.63, 0.62, 0.00}
}
Second, we write down a Second Matrix, in which the numbers will be written over the colored tables
N.B. It's the same matrix as the first but limited to the numbers; The numbers ending with a zero have to be written between "", otherwise they will be rounded on the final figure (0.00 becomes 0.)
c2 = {
{"0.00", -0.14, "0.80", 0.37},
{"-0.10", "0.00", 1.03, 0.69},
{0.54, 0.43, "0.00", 0.17},
{-0.71, 0.63, 0.62, "0.00"}
}
In alternative you can import the matrix from a text file
c1 = Import ["path/file.csv"]
Then we isolate the numerical part of the first matrix
n1 = c1[ [2;;All,2;;All] ]
And we assign the variables for the Colored table
l1 = c1[ [2;;All,1] ] p1 = c1[ [1,2;;All] ]
Finally with the ImageCompose function, we overimpose the numbered table to the colored one
ImageCompose[
ArrayPlot[n1, ColorFunction -> "Rainbow",
ColorFunctionScaling -> True, Frame -> True,
FrameStyle -> Opacity[0], AspectRatio -> 0.737,
FrameTicks -> {{Transpose[{Range[Length[l1]], l1}], None}, {None,
Transpose[{Range[Length[p1]], p1}]}},
FrameTicksStyle ->
Directive[Opacity[1], Bold, FontSize -> 60, FontFamily -> "Times"],
Mesh -> All, MeshStyle -> White, ImageSize -> 1000],
GraphicsGrid[c2, BaseStyle -> {"Times", 45, Bold, White},
AspectRatio -> 0.75, ImageSize -> 780] , {580, 310}
]