2008-08-09 12 views
39

हाल ही में जावा प्रोजेक्ट पर, हमें एक निःशुल्क जावा आधारित रीयल-टाइम डेटा प्लॉटिंग उपयोगिता की आवश्यकता थी। बहुत खोज के बाद, हमने एनओएए से Scientific Graphics Toolkit or SGT नामक इस टूल को पाया। यह बहुत मजबूत लग रहा था, लेकिन हमें पता चला कि यह बहुत विन्यास योग्य नहीं था। या कम से कम हमारी जरूरतों को पूरा करने के लिए पर्याप्त विन्यास योग्य नहीं है। हमने जावा कोड में बहुत गहराई से खोदना समाप्त कर दिया और कोड को इंजीनियरिंग को उलट दिया और साजिश उपकरण को देखने के लिए इसे चारों ओर बदल दिया और जिस तरीके से हम इसे देखना और कार्य करना चाहते थे। बेशक, इसने एनओएए से भविष्य के उन्नयन के लिए कोई मौका मारा।क्या वहां कोई सभ्य मुक्त जावा डेटा प्लॉटिंग लाइब्रेरी है?

तो क्या निःशुल्क या सस्ते जावा आधारित डेटा प्लॉटिंग टूल या पुस्तकालय आप उपयोग करते हैं?

अनुवर्ती: JFreeChart सुझावों के लिए धन्यवाद। मैंने अपनी वेबसाइट की जांच की और यह एक बहुत अच्छा डेटा चार्टिंग और उपयोगिता की साजिश की तरह दिखता है। मुझे अपने मूल प्रश्न में यह स्पष्ट करना चाहिए था कि मैं विशेष रूप से रीयल-टाइम डेटा प्लॉट करने के लिए देख रहा था। मैंने उस बिंदु को स्पष्ट करने के लिए ऊपर दिए गए मेरे प्रश्न को सही किया। ऐसा लगता है कि JFreeChart support for live data is marginal at best, though। वहाँ कोई अन्य सुझाव है?

+0

मैं ठीक उसी नाव में हूँ .. कोशिश की SGT के बाद से कई बार, यह अच्छा पाया लेकिन पर्याप्त विन्यास योग्य नहीं .., भी खुदाई। और इसे वास्तविक समय के लिए भी जरूरी है। चूंकि आपका प्रश्न साल पहले से है, क्या आपने अब तक कुछ भी पाया है? – user978548

उत्तर

17

मुझे कई परियोजनाओं पर JFreeChart का उपयोग करके सफलता मिली है। यह बहुत कॉन्फ़िगर करने योग्य है। JFreeChart ओपन सोर्स है, लेकिन वे developer guide के लिए चार्ज करते हैं। यदि आप कुछ सरल कर रहे हैं, तो नमूना कोड शायद काफी अच्छा है। अन्यथा, डेवलपर गाइड के लिए $ 50 एक बहुत अच्छा सौदा है।

"रीयल-टाइम" डेटा के संबंध में, मैंने इन प्रकार के अनुप्रयोगों के लिए जेएफरी चार्ट का भी उपयोग किया है। दुर्भाग्यवश, मुझे दौड़ की स्थिति से बचने के लिए उचित सिंक्रनाइज़ेशन तंत्र के साथ कुछ कस्टम डेटा मॉडल बनाना पड़ा। हालांकि, यह बहुत मुश्किल नहीं था और JFreeChart अभी भी मेरी पहली पसंद होगी। हालांकि, जैसा कि एफएक्यू सुझाता है, जेएफरी चार्ट आपको सबसे अच्छा प्रदर्शन नहीं दे सकता है अगर यह एक बड़ी चिंता है।

+0

JFreeChart रीयल-टाइम डेटा डिस्प्ले के लिए पर्याप्त है यदि आपका चार्ट अपडेट अंतराल 1 सेकंड या उससे अधिक है। –

0

मैंने पिछली परियोजना पर JFreeChart (http://www.jfree.org/jfreechart/) का उपयोग किया था। इसमें कुछ बहुत अच्छी अंतर्निहित क्षमताएं हैं, और डिज़ाइन वे एक्स्टेंसिबल था, इसलिए यदि आप कुछ कस्टम चार्ट एनोटेशन की आवश्यकता होती है या अक्ष को अलग-अलग प्रस्तुत करना चाहते हैं, या जो भी हो, तो आप हमेशा अपना एक्सटेंशन बढ़ा सकते हैं। यह निश्चित रूप से जांचने लायक है।

0

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

दुर्भाग्य से मैं v0.7 के साथ फंस गया था, लेकिन जब एपीआई स्पष्टता की बात आती है तो नवीनतम रिलीज बहुत बेहतर होता है। समुदाय बहुत उपयोगी है और डेवलपर्स मेल का भी जवाब दे रहे हैं।

यदि आप एक वेब एप्लिकेशन कर रहे हैं और पुस्तकालयों से परेशान नहीं करना चाहते हैं, तो आप Google Chart API देख सकते हैं। इसे स्वयं इस्तेमाल नहीं किया, लेकिन मैंने कुछ परीक्षण शुरू किए जो बहुत ही आशाजनक थे।

0

आईएलओजी के JViews की जांच करें - उनके पास बहुत सी चीजें हैं और कुछ आपकी आवश्यकताओं के अनुरूप हो सकता है। वे सभी बेहद विन्यास योग्य और काफी तेज़ हैं। हालांकि मुक्त नहीं है।

0

रीयल-टाइम प्लॉटिंग के लिए आप क्यूएन प्लॉट, जॉपेन चार्ट या इसके फोर्क ओपनचार्ट 2 का उपयोग कर सकते हैं।

0

जेएचडल्स ऑक्टेव (गणित पैकेज) के लिए एक वैकल्पिक ग्राफिक्स पैकेज है। शायद यह देखने लायक है, लेकिन ऑक्टेव विशिष्ट होने के कारण आपको जो चाहिए वह नहीं हो सकता है।

-Adam

2

Live Graph वास्तविक समय प्रतिपादन का समर्थन करता है।

3

मैं बस इसी तरह की समस्या में भाग गया (इंजीनियरिंग उद्देश्यों के लिए तेज़ अद्यतन डेटा प्रदर्शित करना), और मैं JChart2D का उपयोग कर रहा हूं। यह बहुत कम है और इसमें कुछ क्विर्क हैं लेकिन यह काफी तेज लगता है: मैं एक बेंचमार्क स्पीड टेस्ट चला रहा हूं जहां यह एक स्ट्रिप चार्ट में 2331 अंक प्रति सेकंड (333x7 निशान) जोड़ रहा है और मेरे 3GHz पेंटियम 4 पर CPU का 1% उपयोग करता है।

+0

यह मेरे लिए बहुत ही आशाजनक दिखता है। वास्तव में इसे आजमाने की कोशिश नहीं है, हालांकि। –

-1

आप बाहर JMathPlot

+0

विस्तार से समझाओ –

1

Plot4j जांच करना चाह सकते साजिश रचने भी वास्तविक समय का समर्थन करता है!

2

मैं रीयल-टाइम प्लॉटिंग के लिए GRAL का उपयोग कर रहा हूं। यह एक एलजीपीएल जावा पुस्तकालय है। हालांकि यह JFreeChart जितना शक्तिशाली नहीं है, यह एक अच्छा एपीआई है। मुझे एक साजिश मिल गई और बहुत कम समय में चल रहा था। वे एक वास्तविक समय साजिश उदाहरण भी भेजते हैं।

0

PtPlot एक अच्छा विकल्प हो सकता है। पूर्व में टॉल्मी कहा जाता है।

1

मुझे यह प्रश्न मिला जब मैं जावा के लिए ओपन सोर्स प्लॉटिंग लाइब्रेरीज़ के लिए गुगल रहा था। मैं यहां पोस्ट किए गए उत्तरों से काफी खुश नहीं था इसलिए मैंने इस मुद्दे पर कुछ और शोध किया। हालांकि यह प्रश्न 2008 में वापस पोस्ट किया गया है, फिर भी यह किसी के लिए दिलचस्प हो सकता है।

यहाँ Open Source Charting & Reporting Tools in Java

1

http://autoplot.org/ की एक सूची है रीयल-टाइम अपडेट के लिए अनुमति देता है और वैज्ञानिक भूखंडों के कई प्रकार बनाने के लिए इस्तेमाल किया जा सकता है।

साजिश को अद्यतन करने के लिए, डेटा फ़ाइल में यूआरएल निर्दिष्ट करें और फिर &filePollUpdates=1&tail=100 संलग्न करें। उदाहरण देखें http://autoplot.org/cookbook#Loading_Data

0

jcckit रीयल-टाइम प्लॉटिंग को संभाल सकता है। हालांकि यह उपयोग करने के लिए एक भालू है।

मैंने इसे फोर्क किया, और गैर-रीयलटाइम प्लॉटिंग के लिए इसके चारों ओर एक बहुत ही सरल रैपर बनाया। अंतर्निहित जटिल इंटरफ़ेस का भी सीधे उपयोग किया जा सकता है।

https://bitbucket.org/hughperkins/easyjcckit

1

वाटरलू वैज्ञानिक ग्राफिक्स एक नया LGPL परियोजना है। डेटा ऑब्जेक्ट्स देखने योग्य हैं और वास्तविक समय साजिश परिदृश्य में अपडेट किया जा सकता है। विवरण http://waterloo.sourceforge.net/

कुछ स्क्रीनशॉट देखें:

http://waterloo.sourceforge.net/images/AnatomyZ.png

http://waterloo.sourceforge.net/images/contour.png

http://waterloo.sourceforge.net/images/errorbar.png

संबंधित मुद्दे