2009-09-29 9 views
22

में साजिश बनाना मुझे अपने एप में that या that जैसे कुछ साजिश को लागू करने की आवश्यकता है, यह कुछ भी समान हो सकता है।क्यूटी

मैं कोई प्रगति के साथ क्यूटी वेब साइट पर एक खोज की है, और मैं QWT पैकेज लेकिन वहाँ समान कुछ भी नहीं देखा था।

कोई विचार?

+0

यहां एक [उत्तर] (https://stackoverflow.com/questions/7800460/how-do-you-plot-points-in-qt/7841265#7841265) QGraphicsView में पॉइंट्स प्लॉट करने के लिए स्रोत कोड के साथ है आसानी से (कोड की 11 लाइनें)। ऐसा लगता है कि यह पहले बॉक्स से बाहर नहीं है, लेकिन ऐसा इसलिए है क्योंकि ग्राफिक्स व्यू फ्रेमवर्क मानक चित्रकार की तुलना में बहुत अधिक शक्तिशाली है। – phyatt

उत्तर

24

मैं दृढ़ता से अनुशंसा करते हैं Qwt भी बेहतर करेंगे।

QWT एक परिपक्व, अच्छी तरह से प्रलेखित पुस्तकालय है और मुझे लगता है कि यह कहना उचित है, क्यूटी में भूखंडों और अन्य प्रदर्शन और नियंत्रण विजेट लागू करने के लिए मानक समाधान।

आप 3 डी भूखंडों की जरूरत है, QwtPlot3D प्रयास करें।

+1

कैसे [QCustomPlot] (http://www.qcustomplot.com/) के बारे में? यह अब बेहतर विकल्प प्रतीत होता है। – Isaac

+1

QCustomPlot या तो जीपीएल या वाणिज्यिक की अनुमति देता है। Qwt एलजीपीएल लाइसेंस का उपयोग करता है। यह ऐसा कुछ है जिसे आप जिस परियोजना पर काम कर रहे हैं उसके आधार पर आपको अवश्य विचार करना चाहिए। – rbaleksandar

2

क्यूटी के पास बॉक्स से बाहर निकलने के लिए कोई समर्थन नहीं है।

सबसे बुनियादी समाधान QGraphicsView उपयोग करने के लिए है। बस विभिन्न वस्तुओं का उपयोग करके अपनी साजिश प्रस्तुत करें।

इसके अलावा, आप this thread का पालन कर सकते हैं। इसमें ढांचे को साकार करने के लिए कुछ पॉइंटर शामिल हैं लेकिन मुझे नहीं पता कि वे कितने उपयोगी हैं या फिर भी वे Qt 4.x में समर्थित हैं या नहीं।

8

मैं इसके लिए Qwt का उपयोग कर रहा हूं। चाल एक चरण समारोह का उपयोग करना है (इस link द्वारा अंतिम उदाहरण देखें), और डेटा को 0.5 से स्थानांतरित करें, ताकि बार टिक टिके रहें। अल्फा ब्लेंडिंग और एंटी-एलाइजिंग सक्षम के साथ आप क्या प्राप्त कर सकते हैं इसका एक उदाहरण यहां दिया गया है: my histogram। आशा, तुम ;-)

7

एक विकल्प के रूप QWT करने के लिए आप भी qt-plotting-widget जो एक सरल विकल्प हो सकता है सोच सकते हैं।

+3

इसे अब QCustomPlot कहा जाता है: http://www.qcustomplot.com – AstroFloyd

30

मुझे QCustomPlot पसंद है जो एक क्यूटी सी ++ लाइब्रेरी है। यह अच्छी लग रही, प्रकाशन गुणवत्ता 2 डी प्लॉट, ग्राफ और चार्ट बनाने पर केंद्रित है और वास्तविक समय विज़ुअलाइजेशन अनुप्रयोगों के लिए उच्च प्रदर्शन भी है। आप इसे यहां प्राप्त कर सकते हैं: http://www.qcustomplot.com/

1

QCustomPlot शुरू करना वास्तव में आसान है और कार्टेशियन प्लॉट प्रकारों के बहुत सारे हैं जो आप कर सकते हैं। ऐसा कहकर, प्रदर्शन के अनुसार यह उतना अच्छा नहीं है जितना कि अन्य लोग कहते हैं कि यदि आप एक बार में बड़ी समय श्रृंखला को साजिश करना चाहते हैं। यह डेटा को संग्रहीत करने के लिए आंतरिक रूप से QMap का उपयोग करता है जिसका अर्थ यह है कि पॉपुलर करते समय आप डालने या निकालने के प्रत्येक डेटा बिंदु के लिए, मानचित्र पर डेटा बिंदु जोड़ने के लिए स्मृति का एक आवंटन/रिलीज होने जा रहा है। अधिक जानकारी के लिए this post देखें।

एक और बात मुझे पसंद नहीं है कि यहां तक ​​कि साधारण भूखंडों के लिए वह आंतरिक रूप से एक struct QCPData कि 6 डबल मान संग्रहीत कर लेता है जब आप सामान्य रूप से दो (x और y) की आवश्यकता होगी का उपयोग करता है। यही है, यह एक समय श्रृंखला प्रदर्शित करने के लिए आवश्यक स्मृति की मात्रा triples।

2

क्यूटी 5.6 अब includesक्यूटी चार्ट 2.1 है, जो बार चार्ट का समर्थन करता है (और साथ ही 7 अन्य प्रकार की)।

+0

क्या यह ओपन-सोर्स वितरण में उपलब्ध है? मैं 'चार्ट' मॉड्यूल का उपयोग करने में सक्षम नहीं प्रतीत होता। –

+1

@ व्हायोलेट जिराफ - यह उपलब्ध है, लेकिन 5.6 के ओपन-सोर्स वितरण के साथ शामिल नहीं है। ("ओपन सोर्स उपयोगकर्ता स्रोतों से मॉड्यूल का निर्माण कर सकते हैं।") ओपन सोर्स के साथ बिल्डिंग के साथ कुछ मदद के लिए, यह थ्रेड देखें: https://forum.qt.io/topic/66946/how-to-build-qt- चार्ट-2-1-ऑन-windows-7 –