Thu, 19 Dec 2024 15:55:32 -0500
Update to current alg_tools
\documentclass[tikz]{standalone} \input{plotsetup} \def\datapath{../res/cube} \begin{document} \begin{tikzpicture} \pgfplotsset{ onlyfront/.code = \pgfplotsset{x filter/.expression={% or(\thisrow{face} == 2, or(\thisrow{face} == 4, \thisrow{face} == 6)) ? x : nan% },}, onlyback/.code = \pgfplotsset{x filter/.expression={% or(\thisrow{face} == 1, or(\thisrow{face} == 3, \thisrow{face} == 5)) ? x : nan% },}, } \begin{axis}[illustr3d] % Hidden edges \addplot3[edge] coordinates {(0, 0, 0) (0, 1, 0) (0, 1, 1) }; \addplot3[edge] coordinates {(0, 1, 0) (1, 1, 0) }; % Data on hidden faces \addplot3[backdata] table[x=x,y=y,z=z] {\datapath/data.csv}; % Iterates on hidden faces \addplot3[backiter1] table[x=x,y=y,z=z] {\datapath/x1_log.csv}; \addplot3[backiter2] table[x=x,y=y,z=z] {\datapath/x2_log.csv}; \addplot3[backiter3] table[x=x,y=y,z=z] {\datapath/x3_log.csv}; % Surface \addplot3[ surf, mesh/ordering=x varies, % the second input coordinate stays fixed while first varies mesh/cols=32, % number of first input coordinate points untils second changes surfstyle, ] table [ x = u, z = v, y expr = 0.0, point meta = \thisrow{value}, ] {\datapath/F4.csv}; \addplot3[ surf, mesh/ordering=x varies, % the second input coordinate stays fixed while first varies mesh/cols=32, % number of first input coordinate points untils second changes surfstyle, ] table [ x expr = 1.0, y = u, z = v, point meta = \thisrow{value}, ] {\datapath/F2.csv}; \addplot3[ surf, mesh/ordering=x varies, % the second input coordinate stays fixed while first varies mesh/cols=32, % number of first input coordinate points untils second changes surfstyle, ] table [ x = u, y = v, z expr = 1.0, point meta = \thisrow{value}, ] {\datapath/F6.csv}; % Edges \addplot3[edge] coordinates {(0, 0, 0) (1, 0, 0) (1, 0, 1) (0, 0, 1) (0, 0, 0)}; \addplot3[edge] coordinates {(0, 0, 1) (0, 1, 1) (1, 1, 1) (1, 0, 1)}; \addplot3[edge] coordinates {(1, 0, 0) (1, 1, 0) (1, 1, 1)}; % Data \addplot3[data,onlyfront] table[x=x,y=y,z=z] {\datapath/data.csv}; \addlegendentry{Data} % Iterates \addplot3[iter1,onlyfront] table[x=x,y=y,z=z] {\datapath/x1_log.csv}; \addlegendentry{Iterates 1} \addplot3[iter2,onlyfront] table[x=x,y=y,z=z] {\datapath/x2_log.csv}; \addlegendentry{Iterates 2} \addplot3[iter3,onlyfront] table[x=x,y=y,z=z] {\datapath/x3_log.csv}; \addlegendentry{Iterates 3} % Origin \addplot3[origin,onlyfront] table[x=x,y=y,z=z] {\datapath/origin.csv}; \addlegendentry{Origin} \end{axis} \end{tikzpicture} \end{document}