1

I'm trying to make a figure with a parabolic type curve that is equally spaced and looks uniform between the two axes. I made the following using Mathcha.

\begin{figure}[h!]
\centering




\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt        

\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1]
%uncomment if require: \path (0,300); %set diagram left start at 0, and has height of 300

%Shape: Axis 2D [id:dp33697970652864007] 
\draw  (131.5,215.73) -- (449.5,215.73)(192.5,80) -- (192.5,239) (442.5,210.73) -- (449.5,215.73) -- (442.5,220.73) (187.5,87) -- (192.5,80) -- (197.5,87)  ;
%Shape: Axis 2D [id:dp4413547073522268] 
\draw  (131.5,215.73) -- (449.5,215.73)(382.5,80) -- (382.5,239) (442.5,210.73) -- (449.5,215.73) -- (442.5,220.73) (377.5,87) -- (382.5,80) -- (387.5,87)  ;
%Curve Lines [id:da5441468874806336] 
\draw    (192.5,215) .. controls (293.5,206) and (378.5,152) .. (382.5,83) ;


%Curve Lines [id:da31033460930574375] 
\draw    (192.5,199) .. controls (293.5,190) and (363.5,134) .. (373.5,81) ;


%Curve Lines [id:da47724625643370233] 
\draw    (192.5,183) .. controls (280.5,169) and (328.5,142) .. (362.5,82) ;


%Curve Lines [id:da020885236261497853] 
\draw    (192.5,163) .. controls (262.5,162) and (304.5,143) .. (349.5,81) ;


%Curve Lines [id:da8078278035694941] 
\draw    (243.5,215) .. controls (340.5,194) and (373.5,166) .. (382.5,119) ;


%Curve Lines [id:da38951483876642956] 
\draw    (294.5,215) .. controls (340.5,202) and (356.5,195) .. (382.5,162) ;


%Curve Lines [id:da8319147976748231] 
\draw    (193.5,147) .. controls (268.5,147) and (305.5,115) .. (330.5,81) ;


%Curve Lines [id:da22478757053886234] 
\draw    (348.5,216) .. controls (359.5,211) and (378.5,217) .. (382.5,192) ;


%Curve Lines [id:da21433675413004827] 
\draw    (193.5,128) .. controls (264.5,122) and (276.5,110) .. (309.5,81) ;



% Text Node
\draw (373,224) node   {$L$};
% Text Node
\draw (186,224) node   {$0$};
% Text Node
\draw (460,222) node   {$x_{3}$};
% Text Node
\draw (397,86) node   {$x_{1}$};
% Text Node
\draw (250,101) node   {$\theta ( x_{3})$};


\end{tikzpicture}




\caption{Scattering of a pulse by a single layer.}
\end{figure}

Figure

I would really appreciate any help on how I can make the figure look better.

  • which distance should be equidistant? why you not use some equations for your curves and plot macro? – Zarko May 15 '19 at 10:56
  • I'm trying to plot the first curve repeatedly with equal distance between them on the y direction, so that the curves only occupy the region between 0 and L. – rami_salazar May 15 '19 at 11:02
4

Something like this?

\documentclass[tikz,border=3.14mm]{standalone}
\begin{document}
\begin{tikzpicture}
 \begin{scope}
  \clip (0,0) rectangle (4,3);
  \foreach \X in {-2,-1.6,...,2}
   {\draw (0,\X) parabola ++(5,2);}
 \end{scope} 
 \draw[-stealth] (-1,0) -- (5,0) node[below right]{$x_3$};
 \draw[-stealth] (0,-0.5) node[above left]{$0$} -- (0,3)
 node[right=2em,yshift=-1em]{$\theta(x_3)$};
 \draw[-stealth] (4,-0.5) node[above left]{$L$} -- (4,3) node[below right]{$x_1$};
\end{tikzpicture}
\end{document}

enter image description here

|improve this answer|||||
  • This is perfect thank you so much! I'm sttruggling to add my theta and also x_2 on my y axis. Could you update your answer with this if it's not too much hassle? – rami_salazar May 15 '19 at 11:48
  • @rodger_kicks You're welcome! I added them. – user121799 May 15 '19 at 11:53
  • Thanks. This was so useful to see how to tex these types of images! – rami_salazar May 15 '19 at 11:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.