我不太擅长乳胶,在这里寻找如何将渐变应用于图像,我发现了一篇基本上是我想要的帖子。
使用邮政编码,我得到以下图片
然而,当使用同样的逻辑
\documentclass[border=5mm]{standalone}
\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[xmax=120,ymax=5, samples=50]
\foreach \b in {1,1.2,...,4}{
\pgfmathtruncatemacro{\tmp}{100-\x*20}
\addplot [blue!\tmp!green,thick,domain=0:360,smooth] plot ({(2^2-\b^2)/(2*\b)*(\b*cos(\x))^3},
{(2^2-\b^2)/(2*\b)*(-2*(sin(\x))^3)});
}
\end{axis}
\end{tikzpicture}
\end{document}
我得到以下结果:
出现错误
有人知道发生了什么吗?或者知道正确的解决方法吗?
提前致谢!
答案1
我不明白你是如何得到输出的,我得到了错误,并且绘制的函数并没有真正给出省略号。不过,主要问题是
\pgfmathtruncatemacro{\tmp}{100-\x*20}
应该
\pgfmathtruncatemacro{\tmp}{100-\b*20}
即用 a\b
代替\x
。然后命令的扩展存在问题\addplot
。
\documentclass[tikz,border=5mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.17}
\begin{document}
\begin{tikzpicture}
\begin{axis}[xmax=120,ymax=5, samples=50]
\foreach \b in {1,1.2,...,4}{
\pgfmathtruncatemacro{\tmp}{100-\b*20}
\edef\temp{
\noexpand\addplot [blue!\tmp!green,thick,domain=0:360,smooth]
plot ({(2^2-\b^2)/(2*\b)*(\b*cos(x))^3},
{(2^2-\b^2)/(2*\b)*(-2*(sin(x))^3)});}
\temp
}
\end{axis}
\end{tikzpicture}
\end{document}