I am looking to make a graph in tikz to visually represent the concept of product topology. I am looking for something like this. Can someone tell me how to make it? something like this.

I am new to both TikZ and LaTex, so any and all help would be greatly appreciated :)

  • 1
    Welcome to TeX.SX! Typically, we would like you to show us at least some code where you show what you tried so far. Jul 5 at 19:39
  • Oh thank you so much @JasperHabicht. Apologies for the lack of clarity. But this helps A LOT >:)
    – redbottle
    Jul 9 at 11:51

1 Answer 1


Something to get you started, I strongly suggest that you look up the different things in the code below in the TikZ manual which is in general a great way to study and learn TikZ.




\draw (0,0) rectangle (10,6) node[below left] {$X_1 \times X_2$};

\fill (7,4) circle (2pt) node[right] {$(x_1, x_2)$};

\draw[dashed,pattern=north west lines] (1,0) rectangle (2,6);
\draw[dashed,pattern=north east lines] (0,1) rectangle (10,2);

\draw[shorten <=5pt, <-] (2,2) to[bend left=10] +(1,1) node[right] {$G_1 \times G_2$};

\draw[shorten <=5pt, <-] (2,4) to[bend right] +(1,1) node[right] {$p_2^{-1}(G_2)$};
\draw[shorten <=5pt, <-] (6,1) to[bend right] +(1,-.5) node[right] {$p_1^{-1}(G_1)$};

\draw (-1,0) -- (-1,6) node[left] {$X_1$};
\draw[line width=4pt] (-1,1) -- node[left] {$G_1$} (-1,2);
\fill (-1,4) circle (2pt) node[left] {$x_1$};
\draw[->] (0,6.5) -- node[above] {$p_1$} (-1,6.5);

\draw (0,-1) -- (10,-1) node[below] {$X_2$};
\draw[line width=4pt] (1,-1) -- node[below] {$G_2$} (2,-1);
\fill (7,-1) circle (2pt) node[below] {$x_2$};
\draw[->] (10.5,0) -- node[right] {$p_2$} (10.5,-1);



enter image description here

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.