Heat map + Numbers
c1 = {{"\!\(\*SubscriptBox[\(E\), \(sol\)]\)", "Ir", "Ru", "Sn",
"Ti"}, {"\!\(\*SubscriptBox[\(IrO\), \(2\)]\)", 0.00, -0.14, 0.80,
0.37}, {"\!\(\*SubscriptBox[\(RuO\), \(2\)]\)", -0.10, 0.00, 1.03,
0.69}, {"\!\(\*SubscriptBox[\(SnO\), \(2\)]\)", 0.54, 0.43, 0.00,
0.17}, {"\!\(\*SubscriptBox[\(TiO\), \(2\)]\)", -0.71, 0.63, 0.62,
0.00}}(*Coloured Grid*)
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"}}(*Numbered Grid*)
n1 = c12 ;; All, 2 ;; All (*Numerical Part of the Coloured Grid*)
l1 = c12 ;; All, 1 (*Width of a line*)
p1 = c11, 2 ;; All (*Height of a column*)
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}]