我想要类似热图的东西,其中高度为 0 的绘图点显示为蓝色,高度为 1 的绘图点显示为红色,而介于高度和高度之间的所有点的颜色都呈淡入淡出状态。
这是我的代码:
\documentclass[12pt]{report}
\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot3[red,only marks]
{e^(-pi * 50^(-2) * (x^2 + y^2))};
\end{axis}
\end{tikzpicture}
\end{document}
答案1
pgfplots
下面的代码与手册中的等效代码略有不同winter
。查看“表面”或surf
以了解进一步调整输出的方法。
\documentclass{standalone}
\usepackage{pgfplots}
\usepgfplotslibrary{colormaps}
\pgfplotsset{
/pgfplots/colormap={redblue}{rgb255=(0,0,255) rgb255=(255,0,0)}
}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot3[surf]
{e^(-pi * 50^(-2) * (x^2 + y^2))};
\end{axis}
\end{tikzpicture}
\end{document}
如果您不想让淡入淡出填充表面,而只希望用marks
中的颜色为上色colormap
,则可以使用only marks,scatter
代替surf
: