कैनवास (जीयूआई)

कंप्यूटर विज्ञान और विज़ुअलाइज़ेशन में, कैनवास कंटेनर (अमूर्त डेटा प्रकार) होता है जिसमें विभिन्न आरेखण एलिमेंट (रेखाएं, आकार, पाठ, अन्य एलिमेंटों वाले फ्रेम आदि) होते हैं। यह दृश्य कलाओं में प्रयुक्त कैनवास से अपना नाम लेता है। इसे कभी-कभी दृश्य ग्राफ कहा जाता है क्योंकि यह उपयोगकर्ता इंटरफ़ेस या ग्राफ़िकल दृश्य के तार्किक प्रतिनिधित्व की व्यवस्था करता है। कुछ कार्यान्वयन स्थानिक प्रतिनिधित्व को भी परिभाषित करते हैं और उपयोगकर्ता को ग्राफिकल यूज़र इंटरफ़ेस के माध्यम से एलिमेंटों के साथ इंटरैक्ट करने की अनुमति देते हैं।

लाइब्रेरी समर्थन
विभिन्न फ्री और ओपन-सोर्स कैनवास या सीन-ग्राफ लाइब्रेरी (कम्प्यूटिंग) डेवलपर्स को उनके कंप्यूटर प्रोग्राम के लिए यूजर इंटरफेस या यूजर-इंटरफेस एलिमेंटों का निर्माण करने की अनुमति देते हैं।

मुक्त और मुक्त-स्रोत दृश्य-ग्राफ़ कैनवास विकल्पों के उदाहरणों में सम्मिलित हैं:
 * सी (प्रोग्रामिंग लैंग्वेज) में, एवास (ईएफएल में) प्रबुद्धता परियोजना से
 * सी (प्रोग्रामिंग लैंग्वेज) में, क्लटर (सॉफ्टवेयर), गनोम परियोजना से जुड़ा हुआ है।
 * सी (प्रोग्रामिंग लैंग्वेज) में, जीटीके सीन ग्राफ किट (जीएसके)
 * सी++ में या वैकल्पिक रूप से क्यूटी (सॉफ़्टवेयर) की अपनी मार्कअप भाषा में क्यूएमएल: क्यूटी क्विक, क्यूटी परियोजना से जुड़ा सीनग्राफ़ प्रदान करता है।
 * सी++ में, ओपनसीनग्राफ, ओपनजीएल का उपयोग कर 3डी ग्राफ़िक्स एपीआई
 * सी++ में, ओगरे इंजन, सीन ग्राफ पर आधारित, एकाधिक दृश्य प्रबंधकों का समर्थन करता है।
 * सी++ में, ओपनएसजी, क्लस्टरिंग समर्थन और मल्टी-थ्रेड सुरक्षा के साथ रीयल-टाइम ग्राफ़िक्स के लिए सीन-ग्राफ़ प्रणाली
 * सी++ में, फ्लाइटगियर फ़्लाइट सिमुलेटर कस्टम कैनवस प्रणाली (सिम गियर द्वारा एलजीपीएल एड) का उपयोग करता है जो ओपनसीनग्राफ/ओपनजीएल, ओपनवीजी/शिवावीजी का उपयोग करके हार्डवेयर त्वरित है: फ़्लाइटगियर कैनवास सिस्टम
 * जावा (प्रोग्रामिंग भाषा) में, 2डी और 3डी कार्यक्षमता के साथ जावा एफएक्स दृश्य ग्राफ
 * टीसीएल और अन्य भाषाओं जैसे पर्ल, पायथन (प्रोग्रामिंग लैंग्वेज) (टिंकटर ), और रूबी (प्रोग्रामिंग भाषा) में, टीके टूलकिट 2डी ग्राफिक्स  के लिए विजेट प्रदान करता है।
 * टीसीएल और अन्य भाषाएँ जैसे पर्ल और पायथन (प्रोग्रामिंग भाषा), में टीके जिंक पर टीके कैनवास के लिए विस्तारित प्रतिस्थापन है, जो पदानुक्रमित समूहीकरण, क्लिपिंग, एफ़िन ट्रांसफ़ॉर्मेशन, एंटी-अलियासिंग और हवाई यातायात नियंत्रण के लिए विशिष्ट वस्तुओं के लिए समर्थन जोड़ता है।

विभिन्न लाइब्रेरी के भीतर कुछ कैनवास मॉड्यूल पूर्ण दृश्य-ग्राफ की शक्ति प्रदान नहीं करते हैं- वे निचले स्तर पर कार्य करते हैं जिसके लिए प्रोग्रामर को कोड प्रदान करने की आवश्यकता होती है जैसे कि कैनवास में वस्तुओं को माउस-क्लिक मैप करना। लाइब्रेरी के उदाहरण जिनमें ऐसे कैनवास मॉड्यूल सम्मिलित हैं:
 * सी++ में, केडीई प्लाज्मा कार्यस्थान कोरोना कैनवास
 * एचटीएमएल5 में कैनवास एलिमेंट
 * जावा (प्रोग्रामिंग लैंग्वेज) के लिए, सार विंडो टूलकिट लाइब्रेरी कैनवास
 * जावा (प्रोग्रामिंग भाषा) के लिए, जावा एफएक्स लाइब्रेरी कैनवास
 * जावा (प्रोग्रामिंग लैंग्वेज) के लिए, स्विंग (जावा) लाइब्रेरी %2BHTML5%2Bसी कैनवास कैनवस
 * जावा (प्रोग्रामिंग भाषा) के लिए, मानक विजेट टूलकिट लाइब्रेरी canvas.html कैनवास, ग्रहण (सॉफ्टवेयर) से जुड़ा हुआ है।
 * जावा-जैसी (प्रोग्रामिंग भाषा) जावास्क्रिप्ट के लिए जीडब्ल्यूटी लाइब्रेरी कैनवास
 * सी++ में, पेपाइरस कैनवस लाइब्रेरी जो काहिरा (ग्राफिक्स) लाइब्रेरी का उपयोग करके प्रस्तुत करता है।
 * सी (प्रोग्रामिंग भाषा) में, सीआरकैनवास, जीटीके विजेट जो कैनवास काहिरा (ग्राफिक्स) लाइब्रेरी का उपयोग करके प्रस्तुत करता है।
 * सी (प्रोग्रामिंग भाषा) में, गूकैनवास, जीटीके कैनवास विजेट जो काहिरा (ग्राफिक्स) लाइब्रेरी का उपयोग करके प्रस्तुत करता है।

कैनवास लाइब्रेरी में सम्मिलित हैं, उदाहरण के लिए:
 * माइक्रोसॉफ्टविंडोजविन32 कैनवास