Helpex - Trao đổi & giúp đỡ Đăng nhập

Lỗi: Định dạng: không nhận dạng được “svg”. Sử dụng một trong số:

Hồ Anh Minh
· 06:16 07/07/2020
2 ngày trước

Hallo Tôi cố gắng tạo một cây quyết định bằng biểu dữ liệu csv của mình. Tôi đã cài đặt trong anaconda và python gói graphviz bằng lệnh sau:

conda install graphviz
pip install graphviz

để nhìn thấy cây của tôi. Đây là mã của tôi mà tôi đã viết trong Máy tính xách tay Jupyther:

import pandas as pd
import graphviz
from sklearn import metrics 
from sklearn.tree import DecisionTreeClassifier, export_graphviz
from sklearn.model_selection import train_test_split

file = 'automotive_data.csv'  
COLS = np.arange(0,22,1).tolist()#gibt später bei usecols eine andere möglichkeit die spalten anzusprechen  
data = pd.read_csv(file, header=0, sep = ",", index_col=0, usecols=COLS)
 

x = data.iloc[:,1:]
x = x.to_numpy()

y = data[['Ausfall']]
y

xTrain, xTest, yTrain, yTest = train_test_split(x, y, test_size=0.3, random_state=1)
model = DecisionTreeClassifier (  
      criterion='entropy',   
      splitter='best',       
      min_samples_split= 0.3,   
      max_features=10,  
      max_depth=None
      )
#Danach mit fit erstellt
model.fit(xTrain, yTrain)

dot=export_graphviz(model, out_file=None,filled=True,  
                            feature_names=data.columns[1:24],   
                            class_names=['ja','nein']);  
 # Erzeuge Graphviz-Graphen aus dot-Quellcode  
graph = graphviz.Source(dot)
graph#Here I get an error

Trong hàng cuối cùng, tôi gặp lỗi:

Format: "svg" not recognized. Use one of:
CalledProcessError                        Traceback (most recent call last)
~\anaconda3\lib\site-packages\IPython\core\formatters.py in __call__(self, obj)
    343             method = get_real_method(obj, self.print_method)
    344             if method is not None:
--> 345                 return method()
    346             return None
    347         else:

~\anaconda3\lib\site-packages\graphviz\files.py in _repr_svg_(self)
    111 
    112     def _repr_svg_(self):
--> 113         return self.pipe(format='svg').decode(self._encoding)
    114 
    115     def pipe(self, format=None, renderer=None, formatter=None, quiet=False):

~\anaconda3\lib\site-packages\graphviz\files.py in pipe(self, format, renderer, formatter, quiet)
    136         out = backend.pipe(self._engine, format, data,
    137                            renderer=renderer, formatter=formatter,
--> 138                            quiet=quiet)
    139 
    140         return out

~\anaconda3\lib\site-packages\graphviz\backend.py in pipe(engine, format, data, renderer, formatter, quiet)
    242     """
    243     cmd, _ = command(engine, format, None, renderer, formatter)
--> 244     out, _ = run(cmd, input=data, capture_output=True, check=True, quiet=quiet)
    245     return out
    246 

~\anaconda3\lib\site-packages\graphviz\backend.py in run(cmd, input, capture_output, check, encoding, quiet, **kwargs)
    182     if check and proc.returncode:
    183         raise CalledProcessError(proc.returncode, cmd,
--> 184                                  output=out, stderr=err)
    185 
    186     return out, err

CalledProcessError: Command '['dot', '-Tsvg']' returned non-zero exit status 1. [stderr: b'Format: "svg" not recognized. Use one of:\r\n']

Tôi cũng đã cố gắng sử dụng PNG làm định dạng của mình nhưng nó cũng không hoạt động. Tôi không biết làm thế nào để giải quyết vấn đề này.

9 hữu ích 2 bình luận 4.6k xem chia sẻ
Bùi Khánh Ngọc
· 20:00 22/08/2020
20:00:25 22/08/2020

Vì vậy, rõ ràng vấn đề là bạn phải định cấu hình các plugin graphviz trước.

Mở một thiết bị đầu cuối ở chế độ quản trị viên và chạy dot -c. (Điều này giả định rằng các mã nhị phân graphviz nằm trong đường dẫn của bạn)

22 hữu ích 0 bình luận chia sẻ
Trần Lạc Nhiên
· 03:21 11/07/2020
03:21:07 11/07/2020

Tôi đã gặp vấn đề tương tự, tôi đã giải quyết nó bằng cách cài đặt phiên bản 2.38 thay vì 2.44 https://www2.graphviz.org/Packages/stable/windows/10/msbuild/Release/Win32/

0 hữu ích 0 bình luận chia sẻ
loading
Không tìm thấy câu trả lời bạn tìm kiếm? Duyệt qua các câu hỏi được gắn thẻ python-3.x image anaconda format visible , hoặc hỏi câu hỏi của bạn.

Có thể bạn quan tâm