Can someone help me how to draw an image like this in Tikzpicture? I've been looking for an editable image like this on internet but there is not. I actually need to be able to edit the labels on this picture and to configure them, but I'm out of mind how to build a surface and these tangent planes and vectors in a 3d Tikz image.

enter image description here

  • Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer.
    – Community Bot
    Commented May 30, 2022 at 18:04
  • 1
    Welcome to SE. Please don't post questions where you're asking people to do your work for you. Post your code to show what you tried and ask for specific advice on this code.
    – Miyase
    Commented May 30, 2022 at 18:05
  • I'm not asking anyone to do it for me. I just have no experience in drawning 3d images and plots like this, so I'm looking for and advice how to develop at least the surfaces. Commented May 30, 2022 at 18:12
  • First do you have the equation of the plane...
    – user202729
    Commented May 31, 2022 at 0:19
  • Is it about illustrating the exponential map on a surface?
    – Black Mild
    Commented May 31, 2022 at 4:46

1 Answer 1


As a start point, I did a quick surface with mesh for z = f(x,y) =x^2 - y^2 and I added a surface with surf to draw the plane y. The vectors are inside a scope in order to format them all together. You may check which function better represent the surface you are looking for. I'd suggest to use wolframalpha to find a suitable function faster.

Please, notice the equations are not precise, just a proof of concept. It means, the plane is not the tangencial plane at (0,0) and vectors are not normalized, but e_3 is orthogonal to the plane while e_1 and e_2 are in the plane.

The second plane is commented, but it represents the second, third, ..., n-th plane you might add.

For illustrative purposes, I create an animation. Tha animation serves only to present the answer here without showing a lot of figure of all possible angles, therefore animation lines are commented. Please, do not use animations while learning how to draw, it is time consuming and a simple change numbers in the parameter view are more than enough to check the development of your sketch.

%\begin{animateinline}[poster=first, controls,loop]{10}
%  \multiframe{360}{ii=0+10}{
    % view={\ii}{30},

    \addplot3 [
    domain y = -2:2,
    samples = 20,
    samples y = 8,
    mesh] {x^2 - y^2};

    \addplot3 [domain=-1:1,
    domain y = -1:1,
    samples = 5,
    surf] {y};

    % \addplot3 [domain=-2:-1,
    %   domain y = -1:1,
    %   samples = 5,
    %   surf,red] {2*(x-y)+3};

    \begin{scope}[-latex,blue,very thick]
      \addplot3 [] coordinates {(0,0,0) (1,0,0)} node[right]{$e_1$};
      \addplot3 [] coordinates {(0,0,0) (0,1,1)} node[right]{$e_2$};
      \addplot3 [] coordinates {(0,0,0) (0,-1,1)} node[above]{$e_3$};
%  }

enter image description here

  • 1
    Thanks a lot! That's gonna help strongly! Commented Jun 1, 2022 at 1:05
  • By the way. Check this answer. It might also be of your interest.
    – FHZ
    Commented Jun 1, 2022 at 1:45

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .