
Код выглядит следующим образом:
\documentclass[border=2pt]{standalone}
\usepackage{pgfplots}
\begin{document}
\tikzset{
declare function={
func(\x)= \x*\x;
}
}
\begin{tikzpicture}
\def \xmin {-3}
\def \xmax {3}
\begin{axis}[
xmin={\xmin}, xmax={\xmax},
extra y ticks={9},
extra y tick labels={$c$}]
\addplot [samples=100,domain={\xmin}:{\xmax}] {func(\x)};
\end{axis}
\end{tikzpicture}
\end{document}
Я добавляю extra y ticks={9}
, но на самом деле я хочу добавить extra y ticks={func(\xmin)}
, таким образом, дополнительная метка y tick может быть размещена в нужном месте при \xmin
изменении значения. Как мне написать код для вычисления extra y ticks
значения по функции вместо того, чтобы давать фиксированное значение? Спасибо!
решение1
CW из комментариев:
Задайте расчет в математическом макросе PGF и используйте макрос в качестве extra y ticks
настройки:
\documentclass[border=2pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\begin{document}
\tikzset{
declare function={
func(\x)= \x*\x;
}
}
\begin{tikzpicture}
\def \xmin {-3}
\def \xmax {3}
\pgfmathsetmacro\myextratick{func(\xmin)}
\begin{axis}[
xmin={\xmin}, xmax={\xmax},
extra y ticks={\myextratick},
extra y tick labels={$c$}]
\addplot [samples=100,domain={\xmin}:{\xmax}] {func(\x)};
\end{axis}
\end{tikzpicture}
\end{document}