1. Can I add a label on the top line with the name "vdd"?
  2. A value for the current source?
  3. The name of the transistor on the emitter line and add a number of devices where "Q_1" is?


    \begin{circuitikz}[american,node distance = 30pt]
    \draw (0,0) node[ground]{} to[Tpnp,name=Q1,l=$Q1$]
       ++(0,2) to[short]
       ++(0,2) node(v1){} to[I,invert,l^=$i_0$]
    \draw (Q1.B) |- (0,0);
    \draw (v1) to[short] ++(1,0)node[below]{$v_D$} to[open,o-o]; 
 \caption{The CTAT}

enter image description here

  • 1
    Welcome to TeX.SX! Can you please add the few code lines to make your example compilable? (On the other hand, you can remove the figure environment, as it is not relevant for the question.) Moreover, can you explain in more detail what you want to achieve, in particular question 2 and 3? Maybe add it by hand and attach a scan.
    – gernot
    Commented Nov 15, 2019 at 15:06

1 Answer 1


You have a couple of problems here (and an error in the last line; you need a coordinate after a to and you have none).

The labels on BJT, as explained on the manual, are quite pesky (I do not change them for backward compatibility) and it's better to put them by hand.

I suppose you want something like this:

\usepackage[siunitx, RPvoltages]{circuitikz}
\begin{circuitikz}[american,node distance = 30pt]
    \draw (0,0) node[ground]{} to[Tpnp,name=Q1]
       ++(0,2) to[short]
       ++(0,2) node(v1){} to[I,invert,l^=$i_0$]
    \draw (Q1.B) |- (0,0);
    \draw (v1) to[short, -o] ++(1,0) node[below]{$v_D$};
    \path (Q1.east) node[right]{$Q_1$}; 
    \path (T.north) node[above]{$V_{dd}$}; 

enter image description here

  • The new version of circuitikz will have the transistor's label position fixed. BTW, if this answer was useful for you, please consider accepting it
    – Rmano
    Commented Nov 30, 2019 at 10:27

You must log in to answer this question.

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