Re: Matrici con annotazioni esterne e sfondo in parte colorato

#85602
Up
0
Down
::

mcl1962″ post=85058Grazie Claudio, è proprio quello che mi serviva!
Bisogna che prima o poi io studi tikz!

Se posso approfittare ancora delle tue conoscenze:
1) è possibile impostare globalmente `disable rounded corners=true`?

Assolutamente si: c’è l’opzione [tt]norndcorners[/tt] da passare quando si carica il pacchetto.

mcl1962″ post=85058
2) se volessi mostrare che cancello righe o colonne della matrice con una linea colorata di un dato spessore, è possibile farlo?

Si anche in questo caso è possibile e usare la [tt]tikzmark[/tt] macro viene naturale. Un esempio: `
\documentclass{article}
\usepackage{amsmath}
\usepackage{blkarray}
\usepackage[customcolors]{hf-tikz}% versione richiesta 0.3

\tikzset{offset def/.style={
above left offset={-0.05,0.3},
below right offset={0.05,-0.1},
},
row/.style={
offset def,% lo stile row eredita e applica gli offset definiti prima
set fill color=green!50!lime!60,
set border color=green!40!black,
},
col/.style={
offset def,% lo stile col eredita e applica gli offset definiti prima
set fill color=blue!20!cyan!60,
set border color=blue!60!cyan,
},
}

\newcommand{\tikzmark}[1]{\tikz[remember picture,overlay]\node[coordinate](#1){};}

\newcommand{\cancelrow}[3][]{%
\tikz[remember picture,overlay]\draw[red,thick,#1]
([yshift=0.5ex]#2)–([yshift=0.5ex]#3);
}

\newcommand{\cancelcol}[3][red,thick]{%
\tikz[remember picture,overlay]\draw[#1]
([yshift=1ex,xshift=0.25em]#2)–([xshift=0.25em]#3);
}

\begin{document}

\[
\begin{blockarray}{cccccc}
a & b & c & d & e \\
\begin{block}{(ccccc)c}
1 & \tikzmark{a}1 & 1 & 1 & 1 & f \\
0 & 1 & 0 & 0 & 1 & g \\
\tikzmark{c}0 & 0 & 1 & 0 & 1\tikzmark{d} & h \\
0 & 0 & 0 & 1 & 1 & i \\
0 & \tikzmark{b}0 & 0 & 0 & 1 & j \\
\end{block}
\cancelcol{a}{b}
\cancelrow[ultra thick]{c}{d}% cambiato lo spessore
\end{blockarray}
\]

\end{document}
` La cancellazione sulle colonne fa un po’ schifo, ma pazienza: con l’1 poco altro si può fare. Ricordati di compilare due volte e, a differenza di quando si evidenzia, di mettere i marcatori sulle colonne dalla stessa parte (quando evidenzi il primo va a sinistra del numero e il secondo a destra).

Ciao
Claudio

Go to top