两点重叠(相交)是错误的。应该取决于哪个值更高。

两点重叠(相交)是错误的。应该取决于哪个值更高。

在此处输入图片描述

我的问题是:有些点重叠了。但有时这些点的重叠是错误的。这两个点的交点应该用值较高的点的颜色填充。该值是我的数据表的第三列,名称为“myvalue”。感谢您的支持。

\documentclass{article}

\usepackage{tikz,pgfplots}

\begin{document}

\begin{tikzpicture}
\begin{axis}[enlargelimits=0.2,colorbar]
\addplot[
scatter,mark=diamond*,only marks,
point meta=\thisrow{myvalue}
]
table {
x y  myvalue
0.5 0.63    0.25
3.2 5.91    0.75
0.7 0.119   0.125
0.35    0.2 2
3.65    0.7 0.175
0.2 0.35    0.225
0.7 0.63    0.275
0.35    0.91    3
0.65    0.119   0.325
0.2 0.2 0.375
2.7 0.7 0.425
0.35    3.35    4
7.65    0.63    0.475
0.2 0.91    0.525
0.65    0.119   0.575
6.2 0.147   5
0.7 0.175   0.625
0.35    3.203   0.675
0.65    2.231   0.725
0.2 0.259   6
5.65    0.287   0.775
0.2 0.315   0.825
0.7 0.343   0.875
0.35    0.371   7
0.65    0.399   0.925
0.2 0.427   2
};
\end{axis}
\end{tikzpicture}

\end{document}

答案1

您可以使用 的 3D 图z buffer=sort,从顶部查看。在这种情况下,myvalue列既可用作meta颜色的值,又z可用作顺序的值。

\documentclass{article}

\usepackage{pgfplots}

\begin{document}

\begin{tikzpicture}
\begin{axis}[enlargelimits=0.2,colorbar,
    view={0}{90}  % view the plot from the top
]
\addplot3[
    scatter,mark=diamond*,only marks,
    point meta=\thisrow{myvalue},
    z buffer=sort  % draw the points in the right order
]
table {
x y  myvalue
0.5 0.63    0.25
3.2 5.91    0.75
0.7 0.119   0.125
0.35    0.2 2
3.65    0.7 0.175
0.2 0.35    0.225
0.7 0.63    0.275
0.35    0.91    3
0.65    0.119   0.325
0.2 0.2 0.375
2.7 0.7 0.425
0.35    3.35    4
7.65    0.63    0.475
0.2 0.91    0.525
0.65    0.119   0.575
6.2 0.147   5
0.7 0.175   0.625
0.35    3.203   0.675
0.65    2.231   0.725
0.2 0.259   6
5.65    0.287   0.775
0.2 0.315   0.825
0.7 0.343   0.875
0.35    0.371   7
0.65    0.399   0.925
0.2 0.427   2
};
\end{axis}
\end{tikzpicture}

\end{document}

相关内容