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!