Nodes can go free

You don’t need to put ellipses or circles around your node contents, if you don’t want to.

import daft

pgm = daft.PGM(node_ec="none")
pgm.add_node("cloudy", r"cloudy", 3, 3)
pgm.add_node("rain", r"rain", 2, 2)
pgm.add_node("sprinkler", r"sprinkler", 4, 2)
pgm.add_node("wet", r"grass wet", 3, 1)
pgm.add_edge("cloudy", "rain")
pgm.add_edge("cloudy", "sprinkler")
pgm.add_edge("rain", "wet")
pgm.add_edge("sprinkler", "wet")

pgm.render()
<Axes: >
../../_images/23118b7b3dd05ba83396fa19a84dcb55422e0a1998469a7578f87a963ac46c35.png