在tkinter界面指定位置绘制决策树混淆矩阵并显示代码
时间: 2023-08-18 19:04:04 浏览: 165
绘制混淆矩阵程序
4星 · 用户满意度95%
好的,以下是一个简单的例子,它使用了tkinter和matplotlib库来绘制决策树混淆矩阵,并将其显示在指定的位置上。
```python
import tkinter as tk
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
from matplotlib.figure import Figure
from sklearn.metrics import confusion_matrix
import numpy as np
# 创建根窗口
root = tk.Tk()
root.title("Confusion Matrix")
# 设置画布大小
fig = Figure(figsize=(5, 4), dpi=100)
# 生成混淆矩阵数据
y_true = np.array([0, 1, 2, 0, 1, 2, 0, 1, 2])
y_pred = np.array([0, 1, 1, 0, 1, 2, 0, 2, 2])
cm = confusion_matrix(y_true, y_pred)
# 绘制混淆矩阵图像
ax = fig.add_subplot(111)
cax = ax.matshow(cm)
fig.colorbar(cax)
# 设置轴标签和标题
ax.set_xlabel('Predicted')
ax.set_ylabel('True')
ax.set_xticklabels([''] + ['Class 0', 'Class 1', 'Class 2'])
ax.set_yticklabels([''] + ['Class 0', 'Class 1', 'Class 2'])
ax.set_title('Confusion Matrix')
# 将图像显示在画布上
canvas = FigureCanvasTkAgg(fig, master=root)
canvas.draw()
canvas.get_tk_widget().grid(row=0, column=0)
# 运行窗口
root.mainloop()
```
在这个例子中,我们首先创建了一个根窗口,并指定了它的标题。然后,我们使用matplotlib创建了一个5x4英寸大小的画布,并在其中绘制了混淆矩阵图像。我们还通过设置轴标签和标题来完善图像。
接下来,我们使用`FigureCanvasTkAgg`将图像显示在tkinter窗口中,并使用`grid`方法将其放置在指定的位置(这里是第0行第0列)。
最后,我们通过运行`mainloop`方法来启动窗口并显示图像。
阅读全文