Saya menjalankan kode yang membutuhkan pydot dan graphviz. Saya menggunakan python 3.5 dan ubuntu 16.04 LTS 64 bit.
File "/usr/local/lib/python3.5/dist-packages/keras/utils/vis_utils.py", line 17, in _check_pydot
raise ImportError('Failed to import pydot. You must install pydot'
ImportError: Failed to import pydot. You must install pydot and graphviz for `pydotprint` to work.
Saya googled sedikit kemudian menemukan bahwa saya dapat menginstal pydot dengan kode tersebut pip install pydot
. Tapi saya tahu mendapatkan kesalahan ini. Saya noob di ubuntu dan saya tidak mengerti apa yang harus saya lakukan. jadi bagaimana cara menginstal pydot?
deeplearning@deep-learning-virtual-machine:~$ pip install pydot
Collecting pydot
Collecting pyparsing>=2.1.4 (from pydot)
Using cached pyparsing-2.2.0-py2.py3-none-any.whl
Installing collected packages: pyparsing, pydot
Found existing installation: pyparsing 2.0.3
Uninstalling pyparsing-2.0.3:
Exception:
Traceback (most recent call last):
File "/usr/lib/python3.5/shutil.py", line 538, in move
os.rename(src, real_dst)
PermissionError: [Errno 13] Permission denied: '/usr/lib/python3/dist-packages/__pycache__/pyparsing.cpython-35.pyc' -> '/tmp/pip-45miiuxw-uninstall/usr/lib/python3/dist-packages/__pycache__/pyparsing.cpython-35.pyc'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/pip/basecommand.py", line 215, in main
status = self.run(options, args)
File "/usr/local/lib/python3.5/dist-packages/pip/commands/install.py", line 342, in run
prefix=options.prefix_path,
File "/usr/local/lib/python3.5/dist-packages/pip/req/req_set.py", line 778, in install
requirement.uninstall(auto_confirm=True)
File "/usr/local/lib/python3.5/dist-packages/pip/req/req_install.py", line 754, in uninstall
paths_to_remove.remove(auto_confirm)
File "/usr/local/lib/python3.5/dist-packages/pip/req/req_uninstall.py", line 115, in remove
renames(path, new_path)
File "/usr/local/lib/python3.5/dist-packages/pip/utils/__init__.py", line 267, in renames
shutil.move(old, new)
File "/usr/lib/python3.5/shutil.py", line 553, in move
os.unlink(src)
PermissionError: [Errno 13] Permission denied: '/usr/lib/python3/dist-packages/__pycache__/pyparsing.cpython-35.pyc'
pip install pydot>=1.2.4
dansudo apt-get install graphviz
.Jawaban:
python-pydot dan graphviz berada dalam repositori Ubuntu default di semua versi Ubuntu yang saat ini didukung. Di semua versi Ubuntu yang saat ini didukung, buka terminal dan ketik:
Ini flowchart diciptakan dengan graphviz di Ubuntu. Karena graphviz menggunakan bahasa pemrograman titik built-in yang termasuk dalam paket graphviz, kode sumber dari flowchart tertaut dapat diedit dalam editor teks apa pun bahkan jika python-pydot tidak diinstal.
Saya tidak tahu mengapa Anda ingin menginstal pydot dengan pip ketika Anda bisa mendapatkannya dari repositori Ubuntu, tetapi untuk menjawab pertanyaan Anda, saya tetap mencoba menginstal pydot di lingkungan virtual Python
pip3 install pydot
dan berhasil, jadi mungkin saja Anda perlu memperbarui pip ke versi terbaru dengansudo -H pip3 install --upgrade pip
. Saya menggunakanpip3
bukanpip
karena Anda menulis dalam pertanyaan Anda bahwa Anda menggunakan Python 3.5.sumber
python-
dan juga untuk paket pip3 nama paket mereka dalam repo Ubuntu biasanya diawali denganpython3-
pip
adalah pendekatan yang disarankan: versi terbaru (repositori Ubuntu dapat kedaluwarsa), dikelola dengan file persyaratan bila perlu, dan diinstal kevirtualenv
; tidak ke paket situs sistem.Dari jawaban ini pada "Menginstal paket pydot dan graphviz di lingkungan Anaconda"
sumber
Karena Anda menggunakan python 3, perintah yang tepat adalah
pip3 install pydot graphviz
. Anda dapat menginstal pip3 menggunakansudo apt install python3-pip
.sumber
ln -s /path/to/pip3 /path/to/pip
Di Ubuntu 17.10, ff memperbaiki masalah:
sumber