“RuntimeError: Pastikan executable Graphviz ada di jalur sistem Anda” setelah menginstal Graphviz 2.38


138

Saya mengunduh Graphviz 2.38versi MSI dan menginstal di bawah folder C:\Python34, lalu saya jalankan pip install Graphviz, semuanya berjalan dengan baik. Di jalur sistem saya menambahkan C:\Python34\bin. Ketika saya mencoba menjalankan skrip pengujian, sejalan filename=dot.render(filename='test'), saya mendapat pesan

 RuntimeError: failed to execute ['dot', '-Tpdf', '-O', 'test'], make sure the Graphviz executables are on your systems' path

Saya mencoba untuk meletakkan "C:\Python34\bin\dot.exe"di jalur sistem, tetapi tidak berhasil, dan saya bahkan membuat variabel lingkungan baru "GRAPHVIZ_DOT"dengan nilai "C:\Python34\bin\dot.exe", masih tidak berfungsi. Saya mencoba untuk menghapus Graphviz dan pip uninstall graphviz, kemudian instal ulang dan instal lagi, tetapi tidak ada yang berhasil.

Seluruh pesan traceback adalah:

Traceback (most recent call last):
  File "C:\Python34\lib\site-packages\graphviz\files.py", line 220, in render
    proc = subprocess.Popen(cmd, startupinfo=STARTUPINFO)
  File "C:\Python34\lib\subprocess.py", line 859, in __init__
    restore_signals, start_new_session)
  File "C:\Python34\lib\subprocess.py", line 1112, in _execute_child
    startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\Documents\Kissmetrics\curves and lines\eventNodes.py", line 56, in <module>
    filename=dot.render(filename='test')
  File "C:\Python34\lib\site-packages\graphviz\files.py", line 225, in render
    'are on your systems\' path' % cmd)
RuntimeError: failed to execute ['dot', '-Tpdf', '-O', 'test'], make sure the Graphviz executables are on your systems' path

Adakah yang punya pengalaman dengan itu?

Jawaban:


97
import os
os.environ["PATH"] += os.pathsep + 'D:/Program Files (x86)/Graphviz2.38/bin/'

Di windows cukup tambahkan 2 baris ini di awal, di mana 'D: / Program Files (x86) /Graphviz2.38/bin/' diganti dengan alamat di mana file bin Anda berada.

Itu memecahkan masalah.


9
bekerja di windows, saya mengunduh graphviz-2.38.zip dari sini graphviz.gitlab.io/_pages/Download/Download_windows.html . Buka
zip

Ini bekerja untuk saya. Saya mencoba menambahkan ini ke variabel lingkungan pengguna dan sistem, tetapi itu tidak berhasil, hanya solusi Anda yang berfungsi untuk saya.
Tom

ini bekerja untuk saya juga, tetapi melemparkan kesalahan lain sebelum bekerja. Untuk beberapa alasan itu memberi saya konfigurasi berdampingan ....- kesalahan. Saya juga harus menginstal ulang Microsoft Visual C ++ 2008 Paket Redistributable (x86). Jika seseorang memiliki masalah yang sama, inilah tautannya: [ microsoft.com/de-DE/download/details.aspx?id=29]
Marco

Saya menggunakan chocolatey untuk menginstal graphvizchoco install -y graphviz
Nissan

90

Anda harus menginstal paket graphviz di sistem Anda (bukan hanya paket python). Di Ubuntu Anda harus mencoba:

sudo apt-get install graphviz

Jika ini tidak berhasil (dikatakan paket direferensikan tetapi tidak ada atau semacamnya) berjalan sudo apt-get updateuntuk memperbarui apt-get dan katakan paket apa yang ada.
Pro Q

Jika Anda berada di Docker Container (seperti saya), saya sudah berada di rootdan hanya diperlukanapt-get install graphviz
the775

79

Yang ini memecahkan masalah bagi saya di MAC :

  brew install graphviz

2
Untuk mac, sepertinya ini adalah pilihan terbaik. Kecuali Anda ingin menggunakan MacPorts dan menginstal graphviz dari sini: graphviz.org/Download_macos.php .
AlexG

1
Terima kasih, ini berhasil di MAC saya. Saya telah mencoba menginstal dengan baik pip dan conda tetapi tidak berhasil.
Catbuilts

Bagaimana cara menemukan folder bin saya di mana saya punya graphviz. Saya mengalami masalah ini dan benar-benar membunuh sekarang. Baru saja diperiksa, saya memiliki graphviz 2.38.
Herc01

55

Untuk Windows:

  1. Instal paket windows dari: https://graphviz.gitlab.io/_pages/Download/Download_windows.html
  2. Instal graphvizpaket python
  3. Tambahkan C:\Program Files (x86)\Graphviz2.38\binke jalur Pengguna
  4. Tambahkan C:\Program Files (x86)\Graphviz2.38\bin\dot.exeke Jalur Sistem

Ini berhasil untuk saya!


15
Tutup juga "cmd" Anda di mana notebook jupyter berjalan. CMD yang sedang berjalan tidak menangkap perubahan baru dalam variabel Lingkungan.
Rohit Nandi

Itu tidak berhasil bagi saya sampai saya me- restart sistem
Mohammad Nazari

Ini bekerja dengan sempurna. Baru saja harus me-restart notebook lagi. Terima kasih.
Amresh Giri

21

Coba gunakan:

conda install python-graphviz

Graphviz yang dapat dieksekusi duduk di jalur berbeda dari direktori conda Anda, jika Anda menggunakannya pip install graphviz.


Conda install graphvizbekerja di windows! sepertinya tidak ada yang berhasil: \
Joel Carneiro

14

OSX Sierra, Python 2.7, Graphviz 2.38

Menggunakan pip install graphvizdan conda install graphvizKEDUA menyelesaikan masalah.

piphanya mendapat masalah jalur yang sama dengan milik Anda dan condahanya mendapat kesalahan impor.


HANYA ini bekerja untuk saya. setelah mencoba semuanya. Terima kasih.
Meghna Natraj

Conda install graphvizbekerja di windows! sepertinya tidak ada yang berhasil: \
Joel Carneiro

10

Cukup tambahkan di bawah ini untuk PATH Variabel Lingkungan (sistem) Anda pada Windows

C: \ Program Files (x86) \ Graphviz2.38 \ bin

di sana, Anda dapat menemukan file .exe

Jika tidak bekerja

Temukan folder Graphviz2.38 / bin di Program Files Anda bukan di python lib

Kemudian, tambahkan ke PATH Anda

Sangat penting untuk menemukan folder di mana file .exe ada


tampaknya hanya posting Anda yang dapat menyelesaikan masalah saya ... edisi win10 perusahaan, notebook jupyter, py 3.6
Travis

10

Langkah 1: Instal biner Graphviz

Windows:

  1. Unduh Graphviz dari http://www.graphviz.org/download/
  2. Tambahkan di bawah ini ke variabel lingkungan PATH (sebutkan versi graphviz yang diinstal):
    • C: \ Program Files (x86) \ Graphviz2.38 \ bin
    • C: \ Program Files (x86) \ Graphviz2.38 \ bin \ dot.exe
  3. Tutup buku catatan Juypter yang terbuka dan prompt perintah
  4. Mulai kembali Jupyter / cmd, minta dan uji

Linux:

  1. sudo apt-get pembaruan
  2. sudo apt-get install graphviz
  3. atau bangun secara manual dari http://www.graphviz.org/download/

Langkah 2: Instal modul graphviz untuk python

pip:

  • pip instal graphviz

konda:

  • dapat menginstal graphviz

1
Dipecahkan untuk saya di winzoz
rakwaht

1
Penjelasan yang bagus! Terima kasih ~
Bright Chang

8

Coba conda install graphviz. Saya memiliki masalah yang sama, saya mengatasinya dengan perintah yang disebutkan di MacOS.


1
Conda install graphvizbekerja di windows! sepertinya tidak ada yang berhasil: \
Joel Carneiro

8

Menggunakan conda install graphvizdan conda install python-graphvizmenginstal GraphViz pada Windows10 jalur yang dibutuhkan adalah C: / ProgramData / Anaconda3 / Library / bin / graphviz / untuk saya. Yaitu menambahkan

import os
os.environ["PATH"] += os.pathsep + 'C:/ProgramData/Anaconda3/Library/bin/graphviz/'

memecahkan masalah untuk saya.


6
conda install python-graphviz

Untuk Windows, instal Python Graphviz yang akan menyertakan executable di path.


1
Conda install graphvizbekerja di windows! sepertinya tidak ada yang berhasil: \
Joel Carneiro

6

Di Ubuntu Linux ini menyelesaikannya untuk saya:

pip install graphviz
sudo apt-get install graphviz

Anda juga bisa mencoba conda install -c conda-forge graphvizdaripada menggunakan pip jika menggunakan Anaconda.


1
Ini bekerja untuk saya di WSL di Windows 10 juga. Instalasi menggunakan pip tidak cukup.
Nerxis

6

Ketika menyelesaikan masalah ini untuk saya sendiri, saya menggunakan tutorial GitHub ini , yang menganalisis penyebab masalah ini. Jika kita membaca yang tersirat, ia mengatakan itu membutuhkan sistem dan juga grafik python yaitu. Selain itu conda install, kita perlu menjalankan:

conda install -c conda-forge python-graphviz

Kemudian restart kernel; itu bekerja seperti pesona.


4

1) Graphviz - unduh unzip di tempat tertentu dalam sistem (pip tidak berfungsi di windows) dan sertakan folder bin di path ('set variabel lingkungan di windows' ATAU) yang ditetapkan secara manual di setiap program

import os
os.environ["PATH"] += os.pathsep + 'C:/GraphViz/bin'

2) Kemudian masukkan model ke plot

clf = xgb.train(params, d_train, 1000, evals=evallist, early_stopping_rounds=10)
xgb.plot_tree(clf)
plt.rcParams['figure.figsize'] = [50, 10]
plt.show()

3

Setelah Anda menginstal paket ( tautan jika belum), tambahkan path ke dot.exe sebagai variabel sistem baru.

Path default adalah:

C: \ Program Files (x86) \ Graphviz2.38 \ bin \ dot.exe

masukkan deskripsi gambar di sini


2

Saya memiliki masalah yang sama di Linux dengan Jupyter.

Untuk mengatasinya saya telah menambahkan perpustakaan titik ke python sys.path

Pertama: periksa apakah dotsudah diinstal,

Kemudian:
temukan jalannya whereis dot-> / local / notebook / miniconda2 / envs / ik2 / bin / dot

Akhirnya dalam skrip python: sys.path.append ("/ local / notebook / miniconda2 / envs / ik2 / bin / dot")


15
Di linux saya baru saja sudo apt-get install graphviz(setelah melakukan pip install graphviz) dan setelah itu berhasil.
kata

@ kata-kata Selanjutnya komentar Anda harus menjadi jawaban. Menyelesaikan masalah bagi saya
Riken Shah

@words Selanjutnya itulah jawabannya!
SeF


2

Saya memiliki pesan kesalahan yang sama pada Mac OS (El Capitan), menggunakan PyCharm IDE. Saya telah menginstal Graphviz menggunakan brew, seperti yang direkomendasikan dalam jawaban RZK, dan menginstal paket python Graphviz menggunakan PyCharm (saya dapat memeriksa Graphviz diinstal dengan benar dengan mencoba dot -Vdi terminal dan mendapatkan :) dot - graphviz version 2.40.1 (20161225.0304). Namun saya masih mendapatkan pesan kesalahan ketika mencoba menelepon Graphviz dari PyCharm.

Saya harus menambahkan path / usr / local / bin di opsi PyCharm, seperti yang direkomendasikan dalam jawaban untuk pertanyaan ini untuk menyelesaikan masalah.


2

Ini menunjukkan beberapa masalah jalur:

pip install graphviz

Jadi ini berhasil bagi saya:

sudo apt-get install graphviz

2

Saya menggunakan macOS Catalina 10.15.3, dan saya mengalami kesalahan serupa: ExecutableNotFound: failed to execute ['dot', '-Tsvg'], make sure the Graphviz executables are on your systems' PATH

Memperbaikinya dengan:

pip3 install graphviz DAN brew install graphviz

Catatan pip3 installhanya akan mengembalikan pesan sukses Successfully installed graphviz-0.13.2sehingga kita masih perlu menjalankan brew installuntuk mendapatkan graphviz 2.42.3 (pada 10 Maret 2020, 6PM).


1

Untuk pengguna Linux yang tidak memiliki akses root dan karenanya tidak dapat menggunakan sudoperintah seperti yang disarankan dalam jawaban lain ...

Pertama, aktifkan conda virtual-environment Anda (jika Anda ingin menggunakannya) dengan:

source activate virtual-env-name

Kemudian instal graphviz, bahkan jika Anda sudah melakukannya menggunakan pip:

conda install graphviz

kemudian salin hasil dari perintah berikut:

whereis dot

Dalam kasus saya, hasilnya adalah:

/home/nader/anaconda2/bin/dot

dan menambahkannya ke variabel PATH Anda. Jalankan saja perintah di bawah ini

nano ~/.bashrc

dan tambahkan baris ini ke akhir file yang dibuka:

PATH="/home/username/anaconda2/bin/dot:$PATH"
export PATH

sekarang tekan Ctrl+ Odan kemudian Ctrl+ Xuntuk menyimpan dan keluar.

Masalah harus diselesaikan sekarang.

Pengguna Pycharm, harap dicatat: Pycharm tidak selalu melihat variabel PATH sama dengan terminal Anda. Solusi ini tidak berfungsi untuk Pycharm, dan mungkin IDE lain. Tetapi Anda dapat memperbaikinya dengan menambahkan baris kode ini:

os.environ["PATH"] += os.pathsep + '/home/nader/anaconda2/bin'

ke program python Anda. Jangan lupa untuk

import os

pertama :)

Sunting: Jika Anda tidak ingin menggunakan conda, Anda masih dapat menginstal graphviz dari sini tanpa izin root dan menambahkan folder bin ke variabel PATH Anda. Saya tidak menguji ini.


bagaimana jika whereis dotoutput tidak lain adalah dot:? Saya menggunakan PyCharm pada Windows untuk terhubung ke server Ubuntu 16.04 dan sepertinya tidak dapat menemukan folder bin yang perlu ditambahkanos.environ["PATH"] += os.pathsep + '...'
bit_scientist

Lebih baik merujuk pada masalah saya yang diposting di sini
bit_scientist


1

Tambahkan graphviz ke Jalur Sistem

  1. Windows - Edit Variabel Lingkungan Sistem.
  2. Pilih Variabel Lingkungan.
  3. Pilih Jalur - Baru
  4. Tambahkan Jalur graphviz

Mis: C: \ Users \ AppData \ Local \ Continuum \ anaconda3 \ Library \ bin \ graphviz


0

OS Mojave 10.14., Python 3.6

Menggunakan pip install graphvizumpan balik yang baik di terminal, tetapi menyebabkan kesalahan ini ketika saya mencoba membuat grafik di notebook Jupyter. Saya kemudian berlari brew install graphviz, yang memberikan kesalahan pada terminal. Kemudian saya berlari conda install graphvizdan grafik bekerja.

Dari komentar @ Leighton: pip hanya mendapat masalah lintasan yang sama dengan milik Anda dan conda hanya mendapat kesalahan impor.


0
import os
os.environ["PATH"] += os.pathsep + "/Macintosh HD⁩/anaconda3⁩/lib⁩/⁨python3.7⁩/site-packages⁩/sphinx⁩/templates⁩/graphviz"

Ini memecahkan masalah PATH di MAC untuk saya!


0

Jika Anda tidak menggunakan Conda tetapi vanilla Python, 'buat instal graphviz' berfungsi.


0
#Write this on anaconda prompt in admin mode
conda install -c anaconda graphviz
conda install -c conda-forge python-graphviz
conda install -c conda-forge/label/broken python-graphviz
conda install -c conda-forge/label/cf201901 python-graphviz
conda install -c conda-forge/label/cf202003 python-graphviz

#check dot -v in window's cmd prompt
C:\WINDOWS\system32>dot -V
dot - graphviz version 2.38.0 (20140413.2041)
(this means graphviz installed successfully)

#Add path to sys and user eve variables
PATH
C:\Anaconda3\pkgs\graphviz-2.38-hfd603c8_2\Library\bin
(search bin folder of graphviz and then copy n paste path in env variables)

#Re-run all cmds in jyupter notebook
#if error occurs (less chances)
#then 
#Restart anaconda and again run all cmds in jyupter notebook
eg.
import graphviz as gp
with open("tree.dot") as f:
    dot_read=f.read()
display(gp.Source(dot_read))

0

coba ketikkan kode berikut dalam anaconda prompt satu per satu.

ini bekerja untuk saya.

Sumber: https://anaconda.org/conda-forge/python-graphviz

conda install -c conda-forge python-graphviz
conda install -c conda-forge/label/broken python-graphviz
conda install -c conda-forge/label/cf201901 python-graphviz
conda install -c conda-forge/label/cf202003 python-graphviz 

-2

mencoba melakukan ini di python import sys! conda install --yes --prefix {sys.prefix} graphviz import graphviz


Silakan tambahkan rincian lebih lanjut untuk jawaban Anda, seperti mengapa ini akan memperbaiki masalah
Deiv
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.