\documentclass{standalone}
\usepackage{asymptote}

\begin{document}

\begin{asy}[width=10cm,height=10cm]
import graph3;

usepackage("amsfonts");

size3(200);

currentprojection=orthographic(4,6,3);

// parametrization
real x(real t) {return cos(2pi*t);}
real y(real t) {return sin(2pi*t);}
real z(real t) {return 0.5*t;}
real z0(real t) {return 0;}

scale(true);

// some parameters
real delta = 0.01;
real phix = 0.1;
real phim = 6.7;

// spiral
path3 spiral1 = graph(x,y,z,0.9,1,operator ..);
draw(spiral1,dotted);
path3 spiral2 = graph(x,y,z,1,phim,operator ..);
draw(spiral2,Arrow3);

// blue circle
draw(unitcircle3, blue);

// orange segments
pen sp = orange+1;

draw(graph(x,y,z0,phix-delta,phix+delta,operator ..),sp);
for(real i=1; i<phim; ++i) {
  draw(graph(x,y,z,i+phix-delta,i+phix+delta,operator ..),sp);
}

// the dot x
triple px = (x(phix),y(phix),0);
dot(px);
label("$x$",px,S);

// axes and labels
xaxis3("",red,Arrow3);
yaxis3("",red,Arrow3);
zaxis3("",red,Arrow3);

label("$\mathbb{R}$",(1,-1,4));

draw((-1,1,4)--(-1,1,1),Arrow3);
label("$p$",(-1,1,2.5),E);

label("$S^1$",(-1,1,0),W,blue);
\end{asy}

\end{document}
