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/ad398886a644933559ca3a2f7264550cb2564f887d732dfe6a380724955b4595.png