"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية إصلاح الخطأ \"لا يوجد اسم عرض ولا يوجد متغير بيئة $DISPLAY\" في Matplotlib؟

كيفية إصلاح الخطأ \"لا يوجد اسم عرض ولا يوجد متغير بيئة $DISPLAY\" في Matplotlib؟

تم النشر بتاريخ 2024-11-05
تصفح:275

How to Fix the \

"_tkinter.TclError: لا يوجد اسم عرض ولا يوجد متغير بيئة $DISPLAY"

يحدث هذا الخطأ عادةً عند تشغيل برنامج Python النصي باستخدام Matplotlib على الخادم دون عرض رسومي. يعتمد Matplotlib على الواجهة الخلفية لتقديم المخططات، وبشكل افتراضي، يختار الواجهة الخلفية لـ Xwindows، والتي تتطلب عرضًا رسوميًا.

لحل هذه المشكلة، تحتاج إلى توجيه Matplotlib لاستخدام واجهة خلفية غير تفاعلية، مثل كما اج. وإليك كيفية تحقيق ذلك:

  • أضف الكود التالي في بداية البرنامج النصي الخاص بك، قبل استيراد pyplot:
import matplotlib
matplotlib.use('Agg')

يقوم هذا الرمز بتعيين الواجهة الخلفية matplotlib إلى Agg، وهو مناسب لإنشاء صور ثابتة بدون شاشة عرض.

  • بدلاً من ذلك، يمكنك أضف السطر التالي إلى ملف .config/matplotlib/matplotlibrc الخاص بك:
backend: Agg

سيؤدي هذا إلى استخدام الواجهة الخلفية Agg بشكل دائم لبرامج Python النصية الخاصة بك.

  • إذا كنت تتصل بالخادم عن بعد، استخدم الأمر التالي:
ssh -X RemoteMachine.com
ssh -X remoteMachine.com
هذا الأمر سوف تمكين إعادة توجيه X11، مما يسمح لك باستخدام شاشة العرض على الخادم.

  • يمكنك أيضًا محاولة تصدير متغير DISPLAY:
export DISPLAY= mymachine.com:0.0
export DISPLAY=mymachine.com:0.0
سيؤدي هذا إلى تعيين متغير بيئة DISPLAY، المطلوب لواجهة Xwindows الخلفية.

لمزيد من المعلومات حول استخدام Matplotlib على الخوادم، راجع الوثائق: https:/ /matplotlib.org/faq/howto_faq.html#matplotlib-in-a-web-application-server

بيان الافراج أعيد طبع هذه المقالة على: 1729601116 في حالة وجود أي انتهاك، يرجى الاتصال بـ [email protected] لحذفها
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3