С pgfplots
помощью можно axis
использовать опции minor xtick
и minor ytick
вместе с grid=minor
ручным созданием линий сетки. Если использовать такие линии сетки, то можно выделить определенную область, ограниченную линиями сетки и осями, заполнив ее каким-либо цветом. Возможно ли это?
Вот пример, иллюстрирующий проблему. Допустим, у меня есть следующее
\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}
который производит
и сказать, что я хочу подчеркнуть верхнюю правую область, которая ограничена линиями сетки и осями. Как я могу это сделать? То есть, чтобы получилось что-то вроде следующего:
решение1
Для этого можно использовать обычную \fill
команду TikZ в сочетании с системами координат axis cs:
и rel axis cs:
. Координаты, указанные в форме, (axis cs:2,3)
относятся к координате 2,3
в системе координат данных, а rel axis cs:1,1
относится к правому верхнему углу холста графика. В вашем случае можно использовать
\fill [orange!25] (axis cs:2,2) rectangle (rel axis cs:1,1);
перед вашей \addplot
командой затенения прямоугольной области. Обратите внимание, что вам нужно будет установить axis on top
, так как в противном случае цветная область будет накладываться на деления и линии осей.
\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}