import pandas as pd
import numpy as np
from sklearn import tree
from sklearn import datasets
from sklearn.model_selection import train_test_split
import graphviz
wine = datasets.load_wine()
df = pd.concat([pd.DataFrame(wine.data), pd.DataFrame(wine.target)], axis= 1)
Xtrain, Xtest, Ytrain, Ytest = train_test_split(wine.data, wine.target, test_size= 0.3)
clf = tree.DecisionTreeClassifier(criterion= 'entropy')
clf = clf.fit(Xtrain, Ytrain)
score = clf.score(Xtest, Ytest)
feature_name = ['酒精', '1', '2','酒精', '1', '2','酒精', '1', '2','酒精', '1', '2', '3']
dot_data = tree.export_graphviz(clf, feature_names= feature_name, class_names= ['qingjiu', 'xueli', 'beiermo'], filled= True, rounded=True)
graph = graphviz.Source(dot_data)
graph.render("tree")