Update visualization.py
Browse files- visualization.py +14 -0
visualization.py
CHANGED
|
@@ -70,6 +70,20 @@ class Visualization:
|
|
| 70 |
st.pyplot(fig)
|
| 71 |
return fig
|
| 72 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 73 |
def download_chart(self, fig, filename):
|
| 74 |
buffer = io.BytesIO()
|
| 75 |
fig.savefig(buffer, format='png')
|
|
|
|
| 70 |
st.pyplot(fig)
|
| 71 |
return fig
|
| 72 |
|
| 73 |
+
def build_tree_diagram(self, row):
|
| 74 |
+
dot = Digraph()
|
| 75 |
+
dot.node("Q1", "Has the student attended ≥ 90% of interventions?")
|
| 76 |
+
dot.node("Q2", "Has the student been engaged ≥ 80% of intervention time?")
|
| 77 |
+
dot.node("A1", "Address Attendance", shape="box")
|
| 78 |
+
dot.node("A2", "Address Engagement", shape="box")
|
| 79 |
+
dot.node("A3", "Consider addressing logistical barriers", shape="box")
|
| 80 |
+
if row["Attended ≥ 90%"] == "No":
|
| 81 |
+
dot.edge("Q1", "A1", label="No")
|
| 82 |
+
else:
|
| 83 |
+
dot.edge("Q1", "Q2", label="Yes")
|
| 84 |
+
dot.edge("Q2", "A2" if row["Engagement ≥ 80%"] == "No" else "A3", label="Yes")
|
| 85 |
+
return dot
|
| 86 |
+
|
| 87 |
def download_chart(self, fig, filename):
|
| 88 |
buffer = io.BytesIO()
|
| 89 |
fig.savefig(buffer, format='png')
|