
Estou tentando criar um Mapa de Markov, conforme descrito por Dias & Vermunt 2007 na Figura 2.http://members.home.nl/jeroenvermunt/dias2006c.pdf
Aqui está a figura:
Até agora tentei usar grades para TikZ, que está funcionando para coloração gradiente, mas não consigo adicionar os nomes dos estados. Também tentei com tabelas, mas esse resultado não parece legal (muito bagunçado, tamanhos de células diferentes).
(Espero que isso seja feito corretamente, pois é minha primeira vez aqui!)
Existe alguém que saiba adicionar nomes de cabeçalho e criar um mapa legal?
Muito obrigado!
Não consigo responder a um comentário. Então farei desta forma. A biblioteca de matrizes de Tikz funciona muito bem (consigo ver os resultados postados no comentário), porém quando o estendo para uma matriz 22*22, aparece um erro:
\hbox cheio demais - em quase todos os parágrafos...
Tentei alterar o tamanho dos tamanhos, largura mínima e largura do texto, mas isso não ajudou. Você poderia me explicar o que essas medidas significam e como corrigir isso? Obrigado novamente!
Preciso de vários mapas de Markov próximos um do outro, mas o alinhamento não funciona porque os 2 mapas inferiores estão em colocações diferentes. Alguém sabe como resolver isso?
\begin{figure}[tb]
\subcaptionbox{Cluster 1, $\pi_1 = 0.18$}{
\begin{tikzpicture}[font=\ttfamily, ampersand replacement=\&]
\matrix (A) [nodes in empty cells,
matrix of nodes,
nodes={draw, minimum size=3mm, inner sep=0pt, outer sep=0pt, anchor=center},
row 1/.style={nodes={draw=none, rotate=90, anchor=west, inner xsep=1mm}},
column 1/.style={nodes={draw=none, minimum width=30mm, text width=28mm, align=right}},
column sep=-\pgflinewidth,
row sep=-\pgflinewidth
]
{ \& AC \& CH \& DP \& HP \& IA \& LB \& LP \& NL \& SC \& show\_discount\_reminder \& show\_funnel\_campaign \& show\_recc \& show\_recp \& show\_upsell \& show\_wijnatlas \& WV \& XT \\
AC \& |[fill=black! 2 ]|\& |[fill=black! 0 ]|\& |[fill=black! 45 ]|\& |[fill=black! 6 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 37 ]|\& |[fill=black! 0 ]|\& |[fill=black! 3 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 5 ]|\& |[fill=black! 0 ]|\& |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\\
XT \& |[fill=black! 8 ]|\& |[fill=black! 0 ]|\& |[fill=black! 17 ]|\& |[fill=black! 17 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 25 ]|\& |[fill=black! 0 ]|\& |[fill=black! 13 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 17 ]|\& |[fill=black! 0 ]|\& |[fill=black! 2 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\\
};
\end{tikzpicture}
}
\subcaptionbox{Cluster 2, $\pi_2 = 0.16$}{
\begin{tikzpicture}[font=\ttfamily, ampersand replacement=\&]
\matrix (A) [nodes in empty cells,
matrix of nodes,
nodes={draw, minimum size=3mm, inner sep=0pt, outer sep=0pt, anchor=center},
row 1/.style={nodes={draw=none, rotate=90, anchor=west, inner xsep=1mm}},
%column 1/.style={nodes={draw=none, minimum width=43mm, text width=40mm, align=right}},
column sep=-\pgflinewidth,
row sep=-\pgflinewidth
]
{ AC \& CH \& DP \& HP \& IA \& LB \& LP \& NL \& SC \& show\_discount\_reminder \& show\_funnel\_campaign \& show\_recc \& show\_recp \& show\_upsell \& show\_wijnatlas \& WV \& XT \\
|[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 17 ]|\& |[fill=black! 2 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 79 ]|\& |[fill=black! 0 ]|\& |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\\
|[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 1 ]|\& |[fill=black! 14 ]|\& |[fill=black! 3 ]|\& |[fill=black! 0 ]|\& |[fill=black! 49 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 33 ]|\\
};
\end{tikzpicture}
}
\subcaptionbox{Cluster 3, $\pi_3 = 0.23$}{
\begin{tikzpicture}[font=\ttfamily, ampersand replacement=\&]
\matrix (A) [nodes in empty cells,
matrix of nodes,
nodes={draw, minimum size=3mm, inner sep=0pt, outer sep=0pt, anchor=center},
%row 1/.style={nodes={draw=none, rotate=90, anchor=west, inner xsep=1mm}},
column 1/.style={nodes={draw=none, minimum width=30mm, text width=28mm, align=right}},
column sep=-\pgflinewidth,
row sep=-\pgflinewidth
]
{AC \& |[fill=black! 2 ]|\& |[fill=black! 0 ]|\& |[fill=black! 40 ]|\& |[fill=black! 10 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 40 ]|\& |[fill=black! 0 ]|\& |[fill=black! 7 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\\
XT \& |[fill=black! 4 ]|\& |[fill=black! 0 ]|\& |[fill=black! 18 ]|\& |[fill=black! 19 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 25 ]|\& |[fill=black! 1 ]|\& |[fill=black! 20 ]|\& |[fill=black! 0 ]|\& |[fill=black! 1 ]|\& |[fill=black! 9 ]|\& |[fill=black! 0 ]|\& |[fill=black! 2 ]|\& |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\\
};
\end{tikzpicture}
}
\subcaptionbox{Cluster 4, $\pi_4 = 0.13$}{
\begin{tikzpicture}[font=\ttfamily, ampersand replacement=\&]
\matrix (A) [nodes in empty cells,
matrix of nodes,
nodes={draw, minimum size=3mm, inner sep=0pt, outer sep=0pt, anchor=center},
%row 1/.style={nodes={draw=none, rotate=90, anchor=west, inner xsep=1mm}},
%column 1/.style={nodes={draw=none, minimum width=43mm, text width=40mm, align=right}},
column sep=-\pgflinewidth,
row sep=-\pgflinewidth
]
{ |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 71 ]|\& |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 6 ]|\& |[fill=black! 0 ]|\& |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 21 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\\
|[fill=black! 3 ]|\& |[fill=black! 0 ]|\& |[fill=black! 16 ]|\& |[fill=black! 11 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 19 ]|\& |[fill=black! 0 ]|\& |[fill=black! 6 ]|\& |[fill=black! 0 ]|\& |[fill=black! 1 ]|\& |[fill=black! 40 ]|\& |[fill=black! 0 ]|\& |[fill=black! 2 ]|\& |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\\
};
\end{tikzpicture}
}
\subcaptionbox{Cluster 5, $\pi_5 = 0.17$}{
\begin{tikzpicture}[font=\ttfamily, ampersand replacement=\&]
\matrix (A) [nodes in empty cells,
matrix of nodes,
nodes={draw, minimum size=3mm, inner sep=0pt, outer sep=0pt, anchor=center},
%row 1/.style={nodes={draw=none, rotate=90, anchor=west, inner xsep=1mm}},
column 1/.style={nodes={draw=none, minimum width=43mm, text width=40mm, align=right}},
column sep=-\pgflinewidth,
row sep=-\pgflinewidth
]
{AC \& |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 17 ]|\& |[fill=black! 4 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 76 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\\
XT \& |[fill=black! 4 ]|\& |[fill=black! 0 ]|\& |[fill=black! 9 ]|\& |[fill=black! 28 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 29 ]|\& |[fill=black! 0 ]|\& |[fill=black! 13 ]|\& |[fill=black! 0 ]|\& |[fill=black! 3 ]|\& |[fill=black! 2 ]|\& |[fill=black! 0 ]|\& |[fill=black! 5 ]|\& |[fill=black! 8 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\\
};
\end{tikzpicture}
}
\subcaptionbox{Cluster 6, $\pi_6 = 0.12$}{
\begin{tikzpicture}[font=\ttfamily, ampersand replacement=\&]
\matrix (A) [nodes in empty cells,
matrix of nodes,
nodes={draw, minimum size=3mm, inner sep=0pt, outer sep=0pt, anchor=center},
%row 1/.style={nodes={draw=none, rotate=90, anchor=west, inner xsep=1mm}},
%column 1/.style={nodes={draw=none, minimum width=43mm, text width=40mm, align=right}},
column sep=-\pgflinewidth,
row sep=-\pgflinewidth
]
{ |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 40 ]|\& |[fill=black! 6 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 18 ]|\& |[fill=black! 0 ]|\& |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 33 ]|\& |[fill=black! 0 ]|\& |[fill=black! 1 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\\
|[fill=black! 7 ]|\& |[fill=black! 1 ]|\& |[fill=black! 8 ]|\& |[fill=black! 29 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\& |[fill=black! 19 ]|\& |[fill=black! 0 ]|\& |[fill=black! 10 ]|\& |[fill=black! 0 ]|\& |[fill=black! 2 ]|\& |[fill=black! 15 ]|\& |[fill=black! 0 ]|\& |[fill=black! 2 ]|\& |[fill=black! 7 ]|\& |[fill=black! 0 ]|\& |[fill=black! 0 ]|\\
};
\end{tikzpicture}
}
\label{TP_userS6}
\caption{Transition probabilities of user data (ADJ) using MMM}
\end{figure}
Responder1
Você pode usar um matrix
:
\documentclass[tikz,border=2mm]{standalone}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}[font=\sffamily\tiny]
\matrix (A) [nodes in empty cells,
matrix of nodes,
nodes={draw, minimum size=3mm, inner sep=0pt, outer sep=0pt, anchor=center},
row 1/.style={nodes={draw=none, rotate=90, anchor=west, inner xsep=1mm}},
column 1/.style={nodes={draw=none, minimum width=12mm, text width=10mm, align=left}},
column sep=-\pgflinewidth,
row sep=-\pgflinewidth
]
{
& frontpage & news & tech \\
frontpage & |[fill=red]| & |[fill=orange]| & \\
news & & |[fill=red!70!black]| & \\
tech & & |[fill=yellow]| & |[fill=red!70!black]| \\
};
\end{tikzpicture}
\end{document}
Atualizar:
O problema com a matriz 22x22 não é devido ao seu tamanho, mas sim ao tamanho dos nós da primeira coluna. No meu exemplo anterior eles foram definidos com
column 1/.style={nodes={draw=none, minimum width=12mm, text width=10mm, align=left}},
com esse tamanho, eles cabem frontpage
, mas não show\_discount\_reminer
. Se você declarar nós da coluna 1 por tempo suficiente para lidar com essas palavras longas, todas as mensagens sobre overfull horizontal box
desaparecerão.
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{tikz}
\usetikzlibrary{matrix}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{figure}[tb]
\begin{tikzpicture}[font=\itshape]
\matrix (A) [nodes in empty cells,
matrix of nodes,
nodes={draw, minimum size=3mm, inner sep=0pt, outer sep=0pt, anchor=center},
row 1/.style={nodes={draw=none, rotate=90, anchor=west, inner xsep=1mm}},
column 1/.style={nodes={draw=none, minimum width=43mm, text width=40mm, align=left}},
column sep=-\pgflinewidth,
row sep=-\pgflinewidth
]
{
& AC & ACRC & CH & DP & HP & IA & infl\_discount\_reminder & infl\_funnel\_campaign & infl\_upsell & infl\_wijnatlas & LB & LP & NL & SC & show\_discount\_reminder & show\_funnel\_campaign & show\_recc & show\_recp & show\_upsell & show\_wijnatlas & WV & XT \\
AC & |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 39 ]|& |[fill=black! 6 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 43 ]|& |[fill=black! 0 ]|& |[fill=black! 3 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 8 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|\\
ACRC & |[fill=black! 40 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 20 ]|& |[fill=black! 20 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 20 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|\\
CH & |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 4 ]|& |[fill=black! 1 ]|& |[fill=black! 1 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 18 ]|& |[fill=black! 2 ]|& |[fill=black! 0 ]|& |[fill=black! 30 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 22 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 22 ]|\\
DP & |[fill=black! 6 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 17 ]|& |[fill=black! 2 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 2 ]|& |[fill=black! 8 ]|& |[fill=black! 0 ]|& |[fill=black! 9 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 52 ]|& |[fill=black! 0 ]|& |[fill=black! 2 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 2 ]|\\
HP & |[fill=black! 2 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 7 ]|& |[fill=black! 49 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 18 ]|& |[fill=black! 0 ]|& |[fill=black! 5 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 13 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 3 ]|\\
IA & |[fill=black! 3 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 14 ]|& |[fill=black! 14 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 18 ]|& |[fill=black! 1 ]|& |[fill=black! 25 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 19 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 1 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|\\
infl\_discount\_reminder & |[fill=black! 2 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 6 ]|& |[fill=black! 2 ]|& |[fill=black! 2 ]|& |[fill=black! 30 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 33 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 19 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 3 ]|\\
infl\_funnel\_campaign & |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 27 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 48 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 22 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|\\
infl\_upsell & |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 64 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 36 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|\\
infl\_wijnatlas & |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 64 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 27 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 9 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|\\
LB & |[fill=black! 5 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 13 ]|& |[fill=black! 22 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 32 ]|& |[fill=black! 0 ]|& |[fill=black! 8 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 14 ]|& |[fill=black! 0 ]|& |[fill=black! 2 ]|& |[fill=black! 2 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|\\
LP & |[fill=black! 6 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 8 ]|& |[fill=black! 4 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 2 ]|& |[fill=black! 36 ]|& |[fill=black! 0 ]|& |[fill=black! 8 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 18 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 15 ]|& |[fill=black! 0 ]|& |[fill=black! 2 ]|\\
NL & |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 2 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 2 ]|& |[fill=black! 5 ]|& |[fill=black! 81 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 3 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 3 ]|\\
SC & |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 9 ]|& |[fill=black! 2 ]|& |[fill=black! 1 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 3 ]|& |[fill=black! 4 ]|& |[fill=black! 0 ]|& |[fill=black! 47 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 23 ]|& |[fill=black! 0 ]|& |[fill=black! 6 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 3 ]|\\
show\_discount\_reminder & |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 82 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 7 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 5 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|\\
show\_funnel\_campaign & |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 3 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 81 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 2 ]|& |[fill=black! 0 ]|& |[fill=black! 5 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 5 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 2 ]|\\
show\_recc & |[fill=black! 3 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 11 ]|& |[fill=black! 4 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 13 ]|& |[fill=black! 0 ]|& |[fill=black! 19 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 34 ]|& |[fill=black! 0 ]|& |[fill=black! 4 ]|& |[fill=black! 6 ]|& |[fill=black! 0 ]|& |[fill=black! 4 ]|\\
show\_recp & |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 50 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 50 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|\\
show\_upsell & |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 4 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 6 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 4 ]|& |[fill=black! 0 ]|& |[fill=black! 45 ]|& |[fill=black! 1 ]|& |[fill=black! 3 ]|& |[fill=black! 32 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 2 ]|\\
show\_wijnatlas & |[fill=black! 10 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 12 ]|& |[fill=black! 3 ]|& |[fill=black! 1 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 43 ]|& |[fill=black! 0 ]|& |[fill=black! 7 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 21 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 3 ]|\\
WV & |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 9 ]|& |[fill=black! 33 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 19 ]|& |[fill=black! 0 ]|& |[fill=black! 3 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 24 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 10 ]|& |[fill=black! 3 ]|\\
XT & |[fill=black! 5 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 15 ]|& |[fill=black! 19 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|& |[fill=black! 25 ]|& |[fill=black! 0 ]|& |[fill=black! 15 ]|& |[fill=black! 0 ]|& |[fill=black! 1 ]|& |[fill=black! 14 ]|& |[fill=black! 0 ]|& |[fill=black! 3 ]|& |[fill=black! 2 ]|& |[fill=black! 0 ]|& |[fill=black! 0 ]|\\
};
\end{tikzpicture}
\caption{Markov map aggregated data (S=1).}
\end{figure}
\end{document}
Responder2
Uma abordagem semelhante à que você propôs em sua pergunta é a seguinte. Eu uso dois loops para rotular as colunas e linhas, depois alguns \fill
para as células selecionadas e, finalmente, a grade. A grade é desenhada como último passo, de modo que as linhas da grade cubram as bordas das células preenchidas.
\documentclass [border=2mm]{standalone}
\usepackage{graphicx}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[scale=0.4]
% Put column headers
\foreach \header [count=\c] in {Lorem, ipsum, dolor, sit, amet, consectetur, adipiscing, elit, Proin, vulputate, dignissim, odio, eu, euismod, sapien, sodales, eu, Curabitur, ipsum, nibh, dictum, eu} {
\node[above] at (\c-0.5,22) {\rotatebox{90}{\small\sffamily\header}};
}
% Put row headers
\foreach \header [count=\c] in {Lorem, ipsum, dolor, sit, amet, consectetur, adipiscing, elit, Proin, vulputate, dignissim, odio, eu, euismod, sapien, sodales, eu, Curabitur, ipsum, nibh, dictum, eu} {
\node[left] at (0,22-\c+0.5) {\small\sffamily\header};
}
% Fill some squares
\fill[black!10] (0,21) rectangle +(1,1); % Use relative coordinates for the rectangle size
\fill[black!30] (1,20) rectangle +(1,1); % Use relative coordinates for the rectangle size
% Finally, the grid
\draw[black, very thin] (0,0) grid (22,22);
\end{tikzpicture}
\end{document}
Resultado: