Tikz: Zeichnen einer Gittermatrix mit Textangaben und Farbgebung

Tikz: Zeichnen einer Gittermatrix mit Textangaben und Farbgebung

Ich bin neu bei Tikz und versuche, ein sehr spezifisches Diagramm zu zeichnen. Es enthält mehrere Funktionen, die ich mit meinen begrenzten Kenntnissen nicht erstellen kann. Es handelt sich um eine Rasterzeichnung mit einigen Textspezifikationen, wie im beigefügten Bild.Bildbeschreibung hier eingeben. Dies ist nur der erste Schritt einer Reihe von Zeichnungen, die ich erstellen und mit Animationen versehen möchte. Beim Überprüfen anderer Beiträge scheint es, als ob dies mit Tikz oder Pgfplot möglich ist, aber ich bin mir nicht sicher, welches besser ist, um später Animationen hinzuzufügen, wie z. B. das Füllen von Gittern.

Der Code, den ich bisher habe, ist der folgende. Im ersten Schritt versuche ich, mit Tikz ein Raster zu zeichnen, aber das sieht ziemlich mühsam aus.

 \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}

Ich freue mich über alle weiteren Anweisungen.

BEARBEITEN Der folgende Code ist meine Version mit Matrix Tikz. Ich muss noch mehr Platz zwischen den Zeilen, die doppelte Linie zwischen den Zeilen und den vertikalen Text an der Seite hinzufügen. Ich habe einen Teil des Codes vonDer einfachste Weg, eine Knotenmatrix zu füllen?

    \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}

verwandte Informationen