# Draw complex pennylane circuits

**URL:** <https://discuss.pennylane.ai/t/draw-complex-pennylane-circuits/506>\
**Category:** PennyLane Help\
**Created:** [August 7, 2020, 5:59am UTC](https://discuss.pennylane.ai/t/draw-complex-pennylane-circuits/506 "2020-08-07T05:59:24Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jay\_Timbadia](https://yyz2.discourse-cdn.com/flex012/user_avatar/discuss.pennylane.ai/jay_timbadia/32/261_2.png) [@Jay\_Timbadia](https://discuss.pennylane.ai/u/Jay_Timbadia)\
**Post date:** [August 7, 2020, 5:59am UTC](https://discuss.pennylane.ai/t/draw-complex-pennylane-circuits/506/1 "2020-08-07T05:59:24Z")

</div>

Hi there, I have started using pennylane recently. Its fabulous.  
This is the circuit:

```python
n_qubits = 4
def circuit1():

    H_layer(n_qubits)

    RY_layer([1,2,3,4])

    for k in range(q_depth):

        entangling_layers(n_qubits)

        RY_layer([1,2,3,4])

    return qml.expval(qml.PauliZ(1))

circuit = qml.QNode(circuit1(), dev)

print(circuit.draw())

```

While draw, its giving error:

```auto
TypeError: [expval(PauliZ(wires=[0])), expval(PauliZ(wires=[1])), expval(PauliZ(wires=[2])), expval(PauliZ(wires=[3]))] is not a callable object 

```

Can anyone help me out?

---

<div class="post-metadata">

**Author:** ![josh](https://yyz2.discourse-cdn.com/flex012/user_avatar/discuss.pennylane.ai/josh/32/100_2.png) [@josh](https://discuss.pennylane.ai/u/josh)\
**Post date:** [August 7, 2020, 11:40am UTC](https://discuss.pennylane.ai/t/draw-complex-pennylane-circuits/506/2 "2020-08-07T11:40:19Z")

</div>

Hi @Jay_Timbadia, you will need to evaluate the QNode before drawing it!

Also, when you create the QNode, you pass the name of the quantum function (without the `()` ).

For example:

```python
>>> circuit = qml.QNode(circuit1, dev)
>>> circuit() # evaluate the QNode
>>> print(circuit.draw()) 

```
