Como desenhar um cubo (gráfico 3D) com linhas tracejadas em vez de linhas sólidas no TikZ?

Como desenhar um cubo (gráfico 3D) com linhas tracejadas em vez de linhas sólidas no TikZ?

A figura de um cubo (ou gráfico 3D), junto com uma imagem externa, é mostrada abaixo (e seu código éaqui). Estou tentando usar linhas tracejadas em vez de linhas sólidas nesta figura. Eu verifiquei esses links,link2,link3, elink4, mas preciso de ajuda para resolver esse problema.

\documentclass{standalone}
\usepackage{pgfplots}
\usetikzlibrary{3d,calc}

\begin{document}
\begin{tikzpicture}
\begin{axis}[
enlargelimits=false,
axis on top,
axis equal image,
xmin=0,xmax=4,
ymin=-1,ymax=1,
zmin=-1,zmax=1,
ylabel=$X$,zlabel=$Y$, %xlabel=$Z$,
view={-20}{30},
xtick={0, 4},
ticks = none,
clip = false,
]

\draw [black,dashed] 
(axis cs:?) -- (axis cs:?)  % ???
(axis cs:?) -- (axis cs:?);

\path (axis cs:0,0,0) coordinate (O) (axis cs:1,0,0) coordinate (X)  
(axis cs:0,1,0) coordinate (Y) (axis cs:0,0,1) coordinate (Z)
 (axis cs:4,0,0) coordinate (P)  
 [x={($(O)-(X)$)},y={($(O)-(Y)$)},z={($(Z)-(O)$)},
    canvas is yz plane at x=0,transform shape]
   (P) node{\includegraphics[width=2cm,height=2cm]{example-image-duck}};


\path (axis cs:0,0,0) coordinate (O) (axis cs:1,0,0) coordinate (X)  
(axis cs:0,1,0) coordinate (Y) (axis cs:0,0,1) coordinate (Z)
 (axis cs:0,0,0) coordinate (P)  
 [x={($(O)-(X)$)},y={($(O)-(Y)$)},z={($(Z)-(O)$)},
    canvas is yz plane at x=0,transform shape]
   (P) node{\includegraphics[width=2cm,height=2cm]{example-image-duck}};


%\draw[black, <->] ([xshift =-0.09cm] axis description cs:0, 0.2) -- node[left] {} ([xshift =-0.1cm] axis description cs:0, 0.66) node[font=\scriptsize, midway, left=-1mm] {\fontsize{6.5}{6.5}\selectfont$y$};
%\draw[black, <->] ([xshift =-.14cm] axis description cs:0.01, 0.19) -- node[left] {} ([xshift =-.39cm] axis description cs:0.35,- 0.01)node[font=\scriptsize, midway,below] {\fontsize{6.5}{6.5}\selectfont$x$};

\end{axis}
\end{tikzpicture}

\end{document}

insira a descrição da imagem aqui

Responder1

Não estou muito claro o que você está tentando fazer ou como tudo o que você tentou não funcionou, mas talvez algo assim ...

linhas tracejadas antes e atrás do pato

No entanto, existem zero cubos nesta resposta.

\documentclass{standalone}
% ateb: https://tex.stackexchange.com/a/705675/ addaswyd o ateb user194703: https://tex.stackexchange.com/a/516994/
\usepackage{pgfplots}
\usetikzlibrary{3d,calc}
\begin{document}
\pgfplotsset{%
  every axis/.append style={%
    draw=lightgray
  },
}%
\begin{tikzpicture}
  \begin{axis}[
      enlargelimits=false,
      axis equal image,
      xmin=0,xmax=4,
      ymin=-1,ymax=1,
      zmin=-1,zmax=1,
      xlabel=$x$,ylabel=$y$,zlabel=$z$,
      view={-20}{30},
      xtick={0, 3},
    ]
    \draw [red,dashed] 
      (axis cs:0,1,1) -- (axis cs:4,1,1) 
      (axis cs:0,1,-1) -- (axis cs:4,1,-1);
    \path (axis cs:0,0,0) coordinate (O) (axis cs:1,0,0) coordinate (X)  
    (axis cs:0,1,0) coordinate (Y) (axis cs:0,0,1) coordinate (Z)
    (axis cs:3,0,0) coordinate (P)  
    [x={($(X)-(O)$)},y={($(Y)-(O)$)},z={($(Z)-(O)$)},
    canvas is yz plane at x=0,transform shape]
    (P) node{\includegraphics[width=2cm,height=2cm]{example-image-duck}};
    \draw [red,densely dashed] 
      (axis cs:0,-1,1) -- (axis cs:4,-1,1) 
      (axis cs:0,-1,-1) -- (axis cs:4,-1,-1);
  \end{axis}
\end{tikzpicture}
\end{document}

informação relacionada