Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menyelesaikan \"_tkinter.TclError: tiada nama paparan dan tiada $DISPLAY environment variable\" Ralat Semasa Menggunakan Matplotlib pada Pelayan?

Bagaimana untuk Menyelesaikan \"_tkinter.TclError: tiada nama paparan dan tiada $DISPLAY environment variable\" Ralat Semasa Menggunakan Matplotlib pada Pelayan?

DDD
DDDasal
2024-10-22 20:50:29114semak imbas

How to Resolve

Menyelesaikan "_tkinter.TclError: tiada nama paparan dan tiada pembolehubah persekitaran $DISPLAY" Ralat

Apabila melaksanakan skrip Python yang melibatkan Matplotlib pada pelayan, anda mungkin menghadapi ralat "_tkinter.TclError: tiada nama paparan dan tiada pembolehubah persekitaran $DISPLAY." Ralat ini timbul kerana Matplotlib lalai menggunakan bahagian belakang Xwindows, yang memerlukan persekitaran paparan grafik. Walau bagaimanapun, persekitaran pelayan sering kekurangan keupayaan ini.

Untuk menangani isu ini, anda boleh mengarahkan Matplotlib untuk menggunakan bahagian belakang bukan interaktif. Masukkan kod berikut pada permulaan skrip anda, sebelum mengimport pyplot:

<code class="python">import matplotlib
matplotlib.use('Agg')</code>

Sebagai alternatif, anda boleh menambah baris berikut pada fail .config/matplotlib/matplotlibrc:

backend: Agg

Ini akan mengkonfigurasi Matplotlib untuk menggunakan hujung belakang Agg, yang tidak memerlukan paparan grafik.

Pilihan lain ialah menggunakan ssh dengan pemajuan X11:

ssh -X remoteMachine

Arahan ini membolehkan anda mengakses Aplikasi Xwindows dari jauh.

Akhir sekali, anda boleh menetapkan pembolehubah persekitaran DISPLAY:

<code class="bash">export DISPLAY=mymachine.com:0.0</code>

Dengan menyatakan nama paparan yang sah, Matplotlib akan dapat menyambung ke paparan grafik pada mesin lain.

Untuk maklumat lanjut, rujuk Soalan Lazim Matplotlib: https://matplotlib.org/faq/howto_faq.html#matplotlib-in-a-web-application-server

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan \"_tkinter.TclError: tiada nama paparan dan tiada $DISPLAY environment variable\" Ralat Semasa Menggunakan Matplotlib pada Pelayan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn