尽管我的测试数据点都在 (0,0,1)、(0,1,0)、(1,0,0) 三角形内,但我的三元图意外地将其中一些绘制在三角形之外。
\documentclass{beamer}
\usepackage{pgfplots}
\pgfplotsset{compat=1.5}
\usepgfplotslibrary{ternary}
\def\ternaryPlot#1{
\begin{frame}
\begin{tikzpicture}
\begin{ternaryaxis}
\addplot3 table[x index = 1, y index = 2, z index= 3]{#1};
\end{ternaryaxis}
\end{tikzpicture}
\end{frame}
}
\begin{document}
\ternaryPlot{ternaryPlotTest.tsv}
\end{document}
三元绘图测试.tsv:
foo ololo alala elele
foo1 0.5 0.3 0.7
foo2 0.2 0.5 0.2
foo3 1 1 1
答案1
这里的问题是测试点不是在 (0,0,1),(0,1,0),(1,0,0) 三角形中。所有坐标之和需要为 1,以便该点位于图内。