TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I cannot get a circuit that I'm trying to recreate to have both the label of the resistor (e.g. R1, R2, etc.) and its value (e.g. 1.0kΩ, 5.6kΩ, etc.) to be displayed on either side of the resistor, like so:

enter image description here

My current circuit and related package statement:

\usepackage[siunitx, american]{circuitikz}

\begin{center}
    \begin{circuitikz}\draw
        (0,0) to[V=12<\volt>] (0,4) -- (0,6)
              to[R=$R_1$, l=1.0<\kilo\ohm>] (8,6) -- (8,4)
              to[R=$R_L$, l=1.0<\kilo\ohm>, *-*] (8,0)
              to[R=$R_5$, l^=1.0<\kilo\ohm>] (4,0)
              to[R=$R_4$, l^=1.0<\kilo\ohm>] (0,0);
        \draw
        (0,4) to[R=$R_2$, l=1.0<\kilo\ohm>] (4,4)
              to[R=$R_3$, l=1.0<\kilo\ohm>] (8,4);
        \draw (4,4) to[R=$R_6$, l=5.6<\kilo\ohm>] (4,0);
        \draw (0,-1) -- node[ground]{} (0,0);
    \end{circuitikz}
\end{center}

enter image description here

As far as I can tell, I've constructed my resistors just like every other example I've found online so far, but it still isn't showing the second label.

Am I simply missing a package, or have I misunderstood something here?

On a side note, you might notice that the labels for the two resistors along the bottom edge aren't being forced above the resistor like my LaTeX is telling it to do.

share|improve this question
    
Have a look here tex.stackexchange.com/questions/73256/… – Khaaba Mar 1 at 4:13
    
To be honest, two labels for one component is distracting. – CroCo Mar 1 at 19:36
up vote 3 down vote accepted

With lot of manual tweak in defining labels positions ...

\documentclass[border=3mm,
               many,
               prewiev]{standalone}
\usepackage[siunitx]{circuitikz}

    \begin{document}
    \begin{circuitikz}\draw
        (0,0) to[V=12<\volt>] (0,4) -- (0,6)
              to[R=$R_1$]       node[pos=0.05,below left=1.5ex] {\SI{1.0}{\kilo\ohm}} (8,6) -- (8,4)
              to[R=$R_L$, *-*]  node[pos=-0.05,above left=1.5ex] {\SI{1.0}{\kilo\ohm}}    (8,0)
              to[R=$R_5$]       node[pos=0.1,above right=1.5ex] {\SI{1.0}{\kilo\ohm}} (4,0)
              to[R=$R_4$]       node[pos=0.1,above right=1.5ex] {\SI{1.0}{\kilo\ohm}} (0,0);
        \draw
        (0,4) to[R=$R_2$]       node[pos=0.1,below left=1.5ex] {\SI{1.0}{\kilo\ohm}} (4,4)
              to[R=$R_3$]       node[pos=0.1,below left=1.5ex] {\SI{1.0}{\kilo\ohm}} (8,4);
        \draw (4,4) to[R=$R_6$] node[pos=-0.05,above left=1.5ex] {\SI{1.0}{\kilo\ohm}}  (4,0);
        \draw (0,-1) -- node[ground]{} (0,0);
    \end{circuitikz}
    \end{document}

enter image description here

share|improve this answer

For occasional usage, it can be done without manual positioning tweaks by naming the bipole and later attaching another label node to the bipole's anchors:

\documentclass[border=2mm]{standalone}
\usepackage[siunitx,american]{circuitikz}

\begin{document}
\begin{circuitikz}
  % for one-off usage:
  \draw (0,0) to[R=1.0<\kilo\ohm>,n=R1] ++(2,0) (R1.s) node[below] {$R_1$};
\end{circuitikz}
\end{document}

enter image description here

However, this is not very convenient usage. Because of the way circuitikz is implemented, I have not succeeded in finding a way to add both labels at the time the bipole is drawn.

You could package this into a convenience macro if you plan to use it more often. With more information about your desired syntax, I may be able to help with this.

share|improve this answer

I am not sure that you can have two labels (one able and the other below), but you can combine them into one label as I have done to the one in red:

enter image description here

To move the ones ion blue to be on top you need to use the underscore since you are drawing from right to left.

Notes:

Code:

\documentclass{article}
\usepackage[siunitx, american]{circuitikz}

\begin{document}

\begin{center}
    \begin{circuitikz}\draw
        (0,0) to[V=12<\volt>] (0,4) -- (0,6)
              to[R, l=\mbox{$R_1=\SI{1.0}{\kilo\ohm}$}, red] (8,6) -- (8,4)
              to[R=$R_L$, l=2.0<\kilo\ohm>, *-*] (8,0)
              to[R=$R_5$, l_=3.0<\kilo\ohm>, blue] (4,0)
              to[R=$R_4$, l_=4.0<\kilo\ohm>, blue] (0,0);
        \draw
        (0,4) to[R=$R_2$, l=5.0<\kilo\ohm>] (4,4)
              to[R=$R_3$, l=6.0<\kilo\ohm>] (8,4);
        \draw (4,4) to[R=$R_6$, l=5.6<\kilo\ohm>] (4,0);
        \draw (0,-1) -- node[ground]{} (0,0);
    \end{circuitikz}
\end{center}
\end{document}
share|improve this answer
    
This is a nice solution since creating two labels for one component is distracting. I don't know why the OP wants two labels. – CroCo Mar 1 at 19:34

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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