Com pgfplots
um pode axis
usar as opções minor xtick
e minor ytick
em conjunto grid=minor
produzir linhas de grade manualmente. Se usarmos essas linhas de grade, poderemos querer enfatizar uma determinada região delimitada pelas linhas de grade e pelos eixos, preenchendo-a com alguma cor. Isso é possível?
Aqui está um exemplo para ilustrar o problema. Digamos que eu tenha o seguinte
\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
minor ytick={2},
minor xtick={2},
grid=minor
]
\addplot{x};
\end{axis}
\end{tikzpicture}
\end{document}
que produz
e digo que quero enfatizar a região superior direita que é delimitada pelas linhas de grade e pelos eixos. Como posso fazer isso? Ou seja, para produzir algo como o seguinte:
Responder1
Você pode usar um \fill
comando TikZ normal em combinação com os axis cs:
sistemas rel axis cs:
de coordenadas para isso. As coordenadas fornecidas no formulário (axis cs:2,3)
referem-se às coordenadas 2,3
no sistema de coordenadas de dados, enquanto rel axis cs:1,1
se referem ao canto superior direito da tela de plotagem. No seu caso, você poderia usar
\fill [orange!25] (axis cs:2,2) rectangle (rel axis cs:1,1);
antes do seu \addplot
comando para sombrear a área retangular. Observe que você desejará definir axis on top
, pois a área colorida se sobreporia às marcas de escala e às linhas do eixo.
\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
minor ytick={2},
minor xtick={2},
grid=minor,
axis on top
]
\fill [orange!25] (axis cs:2,2) rectangle (rel axis cs:1,1);
\addplot{x};
\end{axis}
\end{tikzpicture}
\end{document}