Tikz: テキスト指定と色付けによるグリッドマトリックスの描画

Tikz: テキスト指定と色付けによるグリッドマトリックスの描画

私はTikz初心者で、非常に特殊なグラフを描こうとしています。私の限られた知識では作れないいくつかの機能が含まれています。添付画像のように、テキスト仕様がいくつかあるグリッドタイプの描画です。ここに画像の説明を入力してくださいこれは、アニメーションを追加するために作成したい一連の図面の最初のステップにすぎません。他の投稿を確認すると、tikz または pgfplot で実行できるようですが、後でグリッド塗りつぶしなどのアニメーションを追加するにはどちらが適しているかわかりません。

これまでのところ、私が持っているコードは次のもので、最初のステップとして tikz を使用してグリッドを描画しようとしていますが、かなり面倒です。

 \documentclass[24point]{article}
    \usepackage{tikz}
    
    \begin{document}
    
    \begin{tikzpicture}[every node/.style={minimum size=.5cm-\pgflinewidth, outer sep=0pt}]
     \draw[thin, step=0.5cm,color=black] (0,3) grid (6,0.5);
    \node[] at (+0.25,+1.25) {0};
    \node[] at (+0.75,+1.25) {0};
    \node[] at (+1.25,+1.25) {0};
    \node[] at (+1.75,+1.25) {0};
    \node[fill=lightgray] at (+2.25,+1.25) {1};
    \node[fill=lightgray] at (+2.75,+1.25) {1};
    \node[fill=lightgray] at (+3.25,+1.25) {1};
    \node[fill=lightgray] at (+3.75,+1.25) {1};
    \node[fill=gray] at (+4.25,+1.25) {1};
    \node[] at (+4.75,+1.25) {0};
    \node[] at (+5.25,+1.25) {0};
    \node[] at (+5.75,+1.25) {0};
    \node[] at (+0.25,+1.75) {0};
    \node[] at (+0.75,+1.75) {0};
    \node[] at (+1.25,+1.75) {0};
    \node[] at (+1.75,+1.75) {0};
    \node[fill=lightgray] at (+2.25,+1.75) {1};
    \node[] at (+2.75,+1.75) {0};
    \node[] at (+3.25,+1.75) {0};
    \node[] at (+3.75,+1.75) {0};
    \node[] at (+4.25,+1.75) {0};
    \node[] at (+4.75,+1.75) {0};
    \node[] at (+5.25,+1.75) {0};
    \node[] at (+5.75,+1.75) {0};
    \node[] at (+0.25,+2.75) {1};
    \node[] at (+0.75,+2.75) {2};
   \node[] at (+1.25,+2.75) {3};
   \node[] at (+1.75,+2.75) {4};
   \node[] at (+2.25,+2.75) {5};
   \node[] at (+2.75,+2.75) {6};
   \node[] at (+3.25,+2.75) {7};
   \node[] at (+3.75,+2.75) {8};
   \node[] at (+4.25,+2.75) {9};
   \node[] at (+4.75,+2.75) {10};
   \node[] at (+5.25,+2.75) {11};
   \node[] at (+5.75,+2.75) {12};
    \end{tikzpicture}
        
    
    \end{document}

そこからの指示があれば教えていただければ幸いです。

編集 以下のコードは、マトリックスtikzを使用した私のバージョンです。それでも、行間にスペースを追加し、行間に二重線を入れ、横に縦書きのテキストを追加する必要があります。コードの一部は、ノードのマトリックスを埋める最も簡単な方法は何ですか?

    \documentclass[24point]{article}
            \usepackage{tikz}
            
            \begin{document}
    
     \tikzstyle{matrici}=[
           matrix of math nodes, 
          nodes in empty cells,
          column sep=-\pgflinewidth, % to avoid double borders in contiguous cells
       nodes={
        draw, 
       align=center, 
      inner sep=0pt, 
        text width=0.5cm, 
        minimum height=0.5cm
    }
    ]
    
         \begin{tikzpicture} 
        
       
        \matrix[matrici, 
         row 1/.style={nodes={draw=none, fill=none}},
row 2/.style={nodes={draw=none, fill=none}},
row 3/.style={nodes={draw=none, fill=none}},
row 2 column 1/.style={nodes={font=\small}},
row 2 column 2/.style={nodes={font=\small}},
row 2 column 3/.style={nodes={font=\small}},
row 2 column 4/.style={nodes={font=\small}},
row 2 column 5/.style={nodes={font=\small}},
row 2 column 6/.style={nodes={font=\small}},
row 2 column 7/.style={nodes={font=\small}},
row 2 column 8/.style={nodes={font=\small}},
row 2 column 9/.style={nodes={font=\small}},
row 2 column 10/.style={nodes={font=\small}},
row 2 column 11/.style={nodes={font=\small}},
row 2 column 12/.style={nodes={font=\small}},
row 3 column 1/.style={nodes={font=\small}},
row 3 column 2/.style={nodes={font=\small}},
row 3 column 3/.style={nodes={font=\small}},
row 3 column 4/.style={nodes={font=\small}},
row 3 column 5/.style={nodes={font=\small}},
row 3 column 6/.style={nodes={font=\small}},
row 3 column 7/.style={nodes={font=\small}},
row 3 column 8/.style={nodes={font=\small}},
row 3 column 9/.style={nodes={font=\small}},
row 3 column 10/.style={nodes={font=\small}},
row 3 column 11/.style={nodes={font=\small}},
row 3 column 12/.style={nodes={font=\small}},
row 2 column 5/.style={nodes={fill=gray!20, font=\small}},
row 3 column 5/.style={nodes={fill=gray!30, font=\small}},
row 3 column 6/.style={nodes={fill=gray!30, font=\small}},
row 3 column 7/.style={nodes={fill=gray!30, font=\small}},
row 3 column 8/.style={nodes={fill=gray!30, font=\small}},
row 3 column 9/.style={nodes={fill=gray!20, font=\small}},
]  
(X)  
{1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 & 11 & 12 \\
0 &  0   & 0  & 0  & 1   &  0 & 0   & 0  & 0  &  0  &  0   & 0 \\
0 & 0   & 0  & 0  & 1   &  1 & 1   & 1  & 1  &  0  &  0   & 0 \\
&&&&&&&&&&&\\
};

\draw[->, thick] (-0.80,-1.6) -- (1,-1.6);

\draw [densely dashed] (-1,-1.1) -- (-1,-1.7);

\draw [densely dashed] (1.25,-1.1) -- (1.25,-1.7);
\end{tikzpicture}  
        
        \end{tikzpicture}   
    \end{document}

関連情報