ggvis बनाम ggplot2 + चमकदार; इंटरएक्टिव विज़ुअलाइज़ेशन के लिए कौन सा चुनना है?


10

CrossValidated में यहां एक समान प्रश्न है, और मैंने जवाब पढ़ा है। मेरा सवाल थोड़ा अलग है। मैं केवल अपने डेटा की कल्पना नहीं करना चाहता, और वास्तव में जो मैं कल्पना करना चाहता हूं वह या तो पैकेज के साथ कल्पना करना आसान नहीं है।

मेरे प्लॉट पर दो सेट ( निर्देशांक) हैं। मैं किनारों को जोड़ना चाहता हूं और इसे एक ग्राफ के समान बनाना चाहता हूं। यदि मेरे पास n अंक हैं, तो मेरी समस्या की प्रकृति के आधार पर, मुझे भूखंड में ( n / 2 ) 2 किनारों को जोड़ने की आवश्यकता है ।x,yn(n/2)2

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

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

अंत में, मैं करने के लिए संकुल को संकुचित होता ggvisऔर ggplot2ggvisइंटरैक्टिव भूखंडों को उत्पन्न करने के लिए जानबूझकर डिजाइन के अलावा नया और ताज़ा है। लेकिन मुझे पता चला कि ggplot2+Shinyइंटरएक्टिव प्लॉट भी बना सकते हैं। (क्या यह सही है?) इसके अलावा, मुझे लगा कि ggplot2क्षमताएँ अधिक विविध और परिपक्व हैं ggvis: उदाहरण के लिए ggplot2एक जूमिंग फीचर है जबकि ggvisऐसा नहीं है। अधिक महत्वपूर्ण है, जैसा ggvisकि बढ़ रहा है और बदल रहा है, मैं एक ऐसे काम पर बहुत समय निवेश नहीं करना चाहता हूं जो तकनीकी रूप से अप्रचलित या एक वर्ष या उससे कम हो जाता है। मुझे लगा कि अगर मैं कोड के आधार पर ऐसा करूं तो यह मामला है ggvis

अब क्या आप मेरी पसंद का मूल्यांकन कर सकते हैं ( ggplot2+shiny) और मुझे इस बारे में सलाह दें कि मैं इसके साथ क्या करना चाहता हूं?

जैसा कि मैं किसी भी उल्लेखित पैकेज को नहीं जानता, मैंने ggplot2विकम की पुस्तक से सीखना शुरू कर दिया है और मुझे यह पसंद है! लेकिन मैं कुछ हफ़्ते बिताने और यह पता लगाने से डरता हूं कि यह अद्भुत पैकेज वह नहीं कर सकता है जिसकी सहायता से मैं भी करना चाहता हूं Shiny

पुनश्च: मैं github पर अंतिम कोड डालना चाहता हूं ताकि संभावित उपयोगकर्ता इसे डाउनलोड और चला सकें। इसलिए, मुझे एक वेब एप्लिकेशन बनाने की आवश्यकता नहीं है, किसी भी वेबसाइट या इंटरेक्टिव मानचित्र को ऑनलाइन डालने की कोई आवश्यकता नहीं है। मुझे बस एक इंटरएक्टिव प्लॉट चाहिए जो कि Rstudio के अंदर से चलाया जा सके।


साइट पर आपका स्वागत है! आपने कोशिश की igraphया डी 3 ने?
Dawny33

धन्यवाद! मैंने समीक्षा की कि igraph मेरे लिए क्या कर सकता है और मुझे यह उस डेटा के साथ नहीं मिला जो मेरे पास है। जहां तक ​​मुझे समझ में आया, इग्राफ कनेक्टेड वर्टीकल्स (या किनारों के बारे में समान डेटा) के आधार पर एक नेटवर्क की कल्पना करता है। कुछ एल्गोरिदम और प्राथमिकताओं के आधार पर, igraph दिए गए डेटा के अनुकूल भूखंड पर कोने का पता लगाता है। लेकिन मैं चाहता हूं कि कोने उनके समान निर्देशांक में हों जो मेरे डेटासेट में हैं। मैं नहीं चाहता कि पैकेज उनके लेआउट और स्थान का चयन करे।
शाहीन

D3js.org क्यों नहीं ? ऐसा लगता है कि आपके पास बहुत विशेष आवश्यकताएं हैं। डी 3 एसवीजी के साथ काम करना बेहद आसान बनाता है।
रिकार्डो क्रूज़

क्या आपने गिप्पी की कोशिश की है?
MM

क्या आप CrossVal प्रश्न का लिंक प्रदान कर सकते हैं।
जिम

जवाबों:


4

खैर, इस सहायता अनुरोध के कई महीने बीत चुके हैं। मैं अपने अनुभव को साझा करने के लिए अपने स्वयं के अनुरोध के लिए यह उत्तर लिखता हूं। मैंने सीखा ggplot2और ggvisसाथ ही साथ ShinyShinyउन दोनों के साथ काम कर सकते हैं, लेकिन मैं ggvisतुलना करने के लिए और अधिक संरचित और स्पष्ट पाया ggplot2। कुछ ऐसा है जो पूर्व के उत्तरार्ध के विकास के अनुभव के आधार पर अपेक्षित है। इसके अलावा, त्वरित ग्राफ / चार्ट पीढ़ी की ggvisतुलना ggplot2में बहुत तेज लगता है , यह 'चमकदार' और एप्लेट बनाने के लिए अधिक उपयुक्त लगता है। हालाँकि, नकारात्मक बिंदु कई विशेषताओं की कमी है ggvisक्योंकि पैकेज विकास के अधीन है और अभी तक परिपक्व नहीं हुआ है।

और यहाँ टिप्पणियों के लिए बहुत धन्यवाद। मैंने जाँच की है Gephi, यह मदद नहीं करेगा। मैंने अपना एप्लेट बनाया जो वास्तव में ठीक काम करता है, हालांकि मैं आखिरकार इस बिंदु पर पहुंच गया कि मुझे और अधिक शक्तिशाली उपकरणों का उपयोग करने की आवश्यकता है d3js, जैसे कि पहले से ही सुझाव दिया गया है।


0

समय गुज़र जाता है! काम के अनुभव के 2 साल के बाद, अब मैं शाइनी, आर, और इंटरैक्टिव विज़ुअलाइज़ेशन की बेहतर समझ के साथ अपने खुद के सवाल का जवाब देता हूं।

प्लॉटली अब तक का सबसे अच्छा जवाब है। इसका उपयोग आसानी से ggplotly () ggplot2 स्थिर भूखंडों के रूपांतरण द्वारा किया जा सकता है, या सीधे प्लॉटली कार्यों के पीछे के तर्क को सीखकर।

बाद वाले मामले को विविध भूखंडों के साथ अनुप्रयोगों के लिए सुझाया गया है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.