我正在尝试绘制以下函数
arccos(...) 输出以弧度表示的结果
以下是我得到的信息:
\documentclass[12pt,tikz,a4]{article}
\usepackage[utf8]{inputenc}
\renewcommand*\familydefault{\sfdefault}
\usepackage{tikz}
\usepackage{sansmath}
\usepackage{pgfplots}
\pgfplotsset{trig format plots=rad, compat=1.11}
\begin{document}
\begin{sansmath}
\begin{tikzpicture}
\begin{axis}[xmin=0, xmax=2, ymin=0, ymax=6000, xlabel=$h\ \mathrm{(m)}$, ylabel=$d\ \mathrm{(m)}$,]
\addplot[domain = 0:2, range = 0:6000, samples=500, smooth,] {(6371000) * (acos((6371000)/(6371000 + x)))};
\end{axis}
\end{tikzpicture}
\end{sansmath}
\end{document}
我得到了像这样的空图
如您所见,我在开始时指定函数以弧度为单位,根据 Desmos 的说法,它应该从 y=0-6000 和 x=0-2 正确绘制。我还尝试假设 arccos 以度为单位,但仍然没有绘制任何内容。有人知道我错在哪里吗?
答案1
解决使用以下代码:
\begin{tikzpicture}
\begin{axis}[xmin=0, xmax=2, ymin=0, ymax=6000, xlabel=$h\ \mathrm{(m)}$, ylabel=$d\ \mathrm{(m)}$,]
\addplot[domain=0:2, smooth] gnuplot[samples=1000] {6371000*acos(6371000/(6371000 + x))};
\end{axis}
\end{tikzpicture}
我删除了一些不必要的括号(例如 acos 周围的括号),并使用了 gnuplot。我相信这些组合现在使它工作了,但不确定为什么......