# circuitikz labeling

I am trying to create a few logic circuits for a class that I teach. After brief investigation I decided to use TikZ library circuit due to the lack of the support by PSTricks for American notation. It works like a charm apart of the fact that I have small problem with labeling. This is the picture I am trying to program.

This is the code

\documentclass{article}
\usepackage{circuitikz}
\begin{document}
\begin{center}
\begin{circuitikz}
\draw
(0,0) node[and port] (myand){AND}
(myand.in 1) node[anchor=east]{P}
(myand.in 2) node[anchor=east]{Q}
(0.9,0) node[scale=0.7,not port] (mynot){NOT}
(mynot.out) node[anchor=west]{S}
(myand.out) -- (mynot.in);
\end{circuitikz}
\end{center}
\end{document}


which produces this output

As you can see everything is almost perfect apart of the fact that I do not know how to center words "AND" and "NOT" into the middle of drawings. How do you change the absolute/relative position of labels in a circuit diagram?

By the way this is the second time I use TikZ in my life and it took me only 5 minutes of playing to reproduce almost perfect image. It speaks volumes about the quality of TikZ.

-

You may have to play around with the label distances, but the following works: Placing the additional nodes for the labels after setting the circuit.

\documentclass{article}
\usepackage{circuitikz}% http://ctan.org/pkg/circuitikz
\begin{document}
\begin{center}
\begin{circuitikz}
\draw (0,0) node[and port] (myand){}
(myand.in 1) node[anchor=east]{P}
(myand.in 2) node[anchor=east]{Q}
(0.9,0) node[scale=0.7,not port] (mynot){}
(mynot.out) node[anchor=west]{S}
(myand.out) -- (mynot.in);
\draw (myand) node[left=4pt] {AND}; % AND label
\draw (mynot) node[left=-5pt, scale=0.5] {NOT}; % NOT label
\end{circuitikz}
\end{center}
\end{document}

-