Я новичок в латексе и пытаюсь построить
f(x)=sqrt{2/pi}*exp{-x^2/2}
Мне удалось легко построить экспоненциальную часть, но когда я умножаю ее на квадратный корень, возникают 4 ошибки. Вот мой код:
\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis} [
xmin=0,xmax=4,
xmin=0,xmax=0.9,
xlabel=$x$,
ylabel={$ f(x)=exp(-x^2/2)*sqrt(2/\pi) $}
]
\addplot { exp(-x^2/2)*sqrt(2/\pi) };
\end{axis}
\end{tikzpicture}
\end{document}
все ошибки происходят в строке 11:
Missing $ inserted \addplot {exp(-x^2/2)*sqrt(2/\pi)};
Math formula deleted: Insufficient symbol fonts \addplot {exp(-x^2/2)*sqrt(2/\pi)};
Illegal unit of measure (pt inserted) \addplot {exp(-x^2/2)*sqrt(2/\pi)};
Extra \else \addplot {exp(-x^2/2)*sqrt(2/\pi)};
и предупреждение:
running in backwards compatibility mode (unsuitable tick labels; missing features). Consider writing \pgfplotsset{compat=1.14} into your preamble.
Я пробовал определить две функции и \addplot их умножение, но это не сработало, может ли кто-нибудь мне помочь?
решение1
Ваша ошибка довольно проста: вы использовали команду для набора символа пи вместо значения, которое можно умножить. Этот код работает:
\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis} [
xmin=0,xmax=4,
xmin=0,xmax=0.9,
xlabel=$x$,
ylabel={$ f(x)=exp(-x^2/2)*sqrt(2/\pi) $}
]
\addplot { exp(-x^2/2)*sqrt(2/pi) };
\end{axis}
\end{tikzpicture}
\end{document}
решение2
Это не совсем ответ, но поскольку я заметил довольно много ошибок, это может вам помочь. Конечно, заслугарешениеВаша проблема определенно относится к TeXnician. Давайте начнем.
Что мы исправим:
- Избыточные
xmin, xmax
- Неправильная компиляция
ylabel
- Theгладкостьвашего графика (НЕОБЯЗАТЕЛЬНО: я не знаю, нужен ли вам негладкий график по каким-то личным причинам)
Для получения дополнительных объяснений обратитесь к моему комментарию под вашим первоначальным вопросом.
Вот исправленный код:
\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis} [
xmin=0,xmax=4,
ymin=0,ymax=0.9,
xlabel=$x$,
ylabel={$ f(x)=e^{-x^2/2} \cdot \sqrt{2/\pi} $},
axis lines=center,
axis equal
]
\addplot[smooth, color=blue] { (exp(-x^2/2))*(sqrt(2/pi)) };
\end{axis}
\end{tikzpicture}
\end{document}
Пояснения:
- Заменено
xmin=0,xmax=0.9
наymin=0,ymax=0.9
- Заменено
ylabel={$ f(x)=exp(-x^2/2)*sqrt(2/\pi) $}
наylabel={$ f(x)=e^{-x^2/2} \cdot \sqrt{2/\pi} $}
- Добавлено
smooth
в\addplot
тег (обратите внимание, что того же результата можно добиться с помощьюsamples=<some number>
, и это дает вам больше свободы для оптимизации; например,samples=200
даст аналогичный результат)
ПРИМЕЧАНИЕ: Я также изменил цвет графика (добавив color=blue
в \addplot
тег), чтобы максимально прояснить ситуацию. Я также добавил axis lines=center
и axis equal
для удобства. Первый изменяет форму осей (центральную, а не на границах), а второй устанавливает осисоотношениедо 1:1. Я просто добавил эти два изменения, чтобы сделать всю структуру более понятной.
EDIT: Для новичков я добавил результат компиляции: