Edit and compile if you like:
\documentclass[border=3pt]{standalone}
% Drawing
\usepackage{tikz}
\usetikzlibrary{3d}
\usetikzlibrary{shapes.multipart, arrows.meta}
%Styles
\tikzset{>=latex}
\tikzset{axis/.style={black, very thick, ->}}
\tikzset{ef/.style={very thick, red}}
\tikzset{vec/.style={black, -{Latex[length=0.8mm]}}}
\tikzset{every text node part/.style={align=center}}
% Commands
%% Rectangle
\newcommand{\rect}[2]{%
\begin{scope}[canvas is xz plane at y=1.2]
\draw[thick, fill=black!40] (#1,-1.2) rectangle (#1+0.2,1.2);
\end{scope}
%
\begin{scope}[canvas is xy plane at z=1.2]
\draw[thick, fill=black!25](#1,-1.2) rectangle (#1+0.2,1.2);
\end{scope}
%
\begin{scope}[canvas is yz plane at x=#1]
\draw[thick, fill=black!10] (-1.2,-1.2) rectangle (1.2,1.2);
\draw[thick, fill=black!10, dashed] (0,0) ellipse (0.8cm and 0.6cm);
\end{scope}
}
\newcommand{\cdraw}[2]{\draw[very thick, -stealth, red] (0,0) -- ({#1*cos(#2)}, {#1*sin(#2)});}
% Notation
\usepackage{amsmath}
\begin{document}
\begin{tikzpicture}[x={(0.8cm, 0.4cm)}, y={(0.9cm, -0.3cm)}, z={(0cm,1cm)}, line cap=round, line join=round]
% % Main Axes
% \draw[->] (0,0,0) -- (8,0,0) node[right] {$x$};
% \draw[->] (0,0,0) -- (0,2,0) node[below left] {$y$};
% \draw[->] (0,0,0) -- (0,0,2) node[above] {$z$};
% Propagation Direction Vector
\draw[axis] (1,0,0) -- (8.3,0,0) node[right, black] {\small{Propagation}\\[-0.5mm]\small{Direction}};
% Rectangle
\rect{6}
% Correction so as the Result to Seem 3d
\draw[very thick] (1,0,0) -- (6,0,0);
% Red Line
\draw[very thick, red, variable=\t, domain=1:6, samples=300] plot (\t, {0.8*sin(deg(\t*4+90))}, {0.6*cos(deg(\t*4+90))});
% Vectors from Axis to Red Line
\foreach \i [evaluate={\k = \i*4; \ii = \i;}] in {1,1.05,...,6}
{
\draw[vec] (\ii,0,0) -- +(0, {0.8*sin(deg(\k+90))}, {0.6*cos(deg(\k+90))});
}
% Nodes
\node at (5,-2.5) {\small Elliptically Polarized\\[-0.5mm]\small Light};
\end{tikzpicture}
\end{document}
Click to download: elliptical-polarization.tex
Open in Overleaf: elliptical-polarization.tex
This file is available on GitHub.
See more on the author page of Alexandros Tsagkaropolulos.
