अधिकांश अप्रयुक्त डेटा विज़ुअलाइज़ेशन [बंद]


178

हिस्टोग्राम और स्कैप्लेटोट्स डेटा की कल्पना करने और चर के बीच के रिश्ते के शानदार तरीके हैं, लेकिन हाल ही में मैं सोच रहा हूं कि मैं किस विज़ुअलाइज़ेशन तकनीक को याद कर रहा हूं। आपको क्या लगता है कि प्लॉट का सबसे अधिक उपयोग किया जाने वाला प्रकार है?

उत्तर चाहिए:

  1. अभ्यास में आमतौर पर बहुत अधिक उपयोग नहीं किया जाता है।
  2. पृष्ठभूमि चर्चा के एक महान सौदे के बिना समझ में आता है।
  3. कई सामान्य स्थितियों में लागू हो।
  4. एक उदाहरण बनाने के लिए प्रतिलिपि प्रस्तुत करने योग्य कोड शामिल करें (अधिमानतः आर में)। एक लिंक की गई छवि अच्छी होगी।

13
मुझे लगता है कि यह एक बहुत उपयोगी चर्चा है, और दुख की बात है कि यह बंद है।
एलेक्स ब्राउन

2
@AlexBrown: तो फिर से खोलने के लिए वोट क्यों नहीं? मैं देख सकता हूं कि इस प्रश्न का शब्दांकन "रचनात्मक नहीं" के रूप में क्यों महसूस हो सकता है, लेकिन इस सवाल का परिणाम वेब पर कहीं भी इस विषय पर सबसे अधिक विचारशील और व्यावहारिक जवाब मिला। मैं इन उत्तरों को अद्यतन और विस्तारित देखना पसंद करूंगा।
अधिकतम

2
इसे संभवतः आँकड़े.स्टैकओवरफ़्लो.कॉम पर ले जाया जाना चाहिए। यह उस साइट के लिए बहुत अधिक अनुकूल है।
n

4
इसके बंद होने से पहले Pity no-one ने यहाँ QQ- प्लॉट्स का उल्लेख किया है । वे बहुत उपयोगी हैं!
n

इसे फिर से खोला जाना चाहिए।
पीटर फ्लॉम

जवाबों:


89

मैं वास्तव में अन्य पोस्टर से सहमत हूं: टफ्टे की किताबें शानदार और अच्छी तरह से पढ़ने लायक हैं।

सबसे पहले, मैं आपको इस वर्ष के शुरू में "डेटा की तलाश में" से ggplot2 और ggobi पर एक बहुत अच्छे ट्यूटोरियल की ओर संकेत करूंगा । इसके अलावा कि मैं अभी R से एक विज़ुअलाइज़ेशन, और दो ग्राफ़िक्स पैकेज (जो व्यापक रूप से बेस ग्राफिक्स, जाली या ggplot के रूप में उपयोग नहीं किए जाते हैं) को उजागर करूंगा:

हीट मैप्स

मुझे वास्तव में ऐसे विज़ुअलाइज़ेशन पसंद हैं जो मल्टीवेरेट डेटा, विशेष रूप से टाइम सीरीज़ डेटा को संभाल सकते हैं। हीट मैप इसके लिए उपयोगी हो सकते हैं। रिवॉल्यूशन ब्लॉग पर डेविड स्मिथ द्वारा एक बहुत साफ-सुथरी तस्वीर दिखाई गई थी । यहाँ हेडली के ggplot कोड शिष्टाचार है:

stock <- "MSFT"
start.date <- "2006-01-12"
end.date <- Sys.Date()
quote <- paste("http://ichart.finance.yahoo.com/table.csv?s=",
                stock, "&a=", substr(start.date,6,7),
                "&b=", substr(start.date, 9, 10),
                "&c=", substr(start.date, 1,4), 
                "&d=", substr(end.date,6,7),
                "&e=", substr(end.date, 9, 10),
                "&f=", substr(end.date, 1,4),
                "&g=d&ignore=.csv", sep="")    
stock.data <- read.csv(quote, as.is=TRUE)
stock.data <- transform(stock.data,
  week = as.POSIXlt(Date)$yday %/% 7 + 1,
  wday = as.POSIXlt(Date)$wday,
  year = as.POSIXlt(Date)$year + 1900)

library(ggplot2)
ggplot(stock.data, aes(week, wday, fill = Adj.Close)) + 
  geom_tile(colour = "white") + 
  scale_fill_gradientn(colours = c("#D61818","#FFAE63","#FFFFBD","#B5E384")) + 
  facet_wrap(~ year, ncol = 1)

जो कुछ इस तरह दिख रहा है:

वैकल्पिक शब्द

RGL: इंटरएक्टिव 3 डी ग्राफिक्स

एक और पैकेज जो सीखने के प्रयास के लायक है, वह है आरजीएल , जो आसानी से इंटरैक्टिव 3 डी ग्राफिक्स बनाने की क्षमता प्रदान करता है। इसके लिए ऑनलाइन कई उदाहरण हैं (रॉल डॉक्यूमेंटेशन में शामिल हैं)।

आर-विकी के पास एक अच्छा उदाहरण है कि 3 डी स्कैटर प्लॉट्स का उपयोग कैसे करें।

GGobi

एक और पैकेज जो जानने लायक है, वह है रगोबी । नहीं है इस विषय पर एक पुस्तक स्प्रिंगर सहित ऑनलाइन, और महान प्रलेखन के बहुत सारे / उदाहरण, "डेटा को देखते हुए" बेशक।


अच्छा। कोड / छवि को शामिल करने के लिए धन्यवाद।
इयान फेलो

vertical Z ’की ऊर्ध्वाधर स्थिति से संकेत मिलता है या प्रत्येक ठोस काले ऊर्ध्वाधर रेखा में झुकता है?
डग २३'१०

वे महीने की सीमाएँ हैं (महीने उसी दिन समाप्त नहीं होते हैं)।
शेन

3
वह सुंदर है। आपको महीने की सीमाएं कैसे मिलीं?
एलेक्स ब्राउन


58

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

यहाँ क्विक-आर से एक उदाहरण है: कार डेटा पर डॉटप्लॉट

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

निम्नलिखित उदाहरण में (सभी चीजों के एक्सेल में किया गया है!), आप स्पष्ट रूप से देख सकते हैं कि लेबल स्वैप से किस श्रेणी का नुकसान हुआ होगा।

2 समूहों के साथ डॉटप्लॉट


1
कैसे एक डॉटप्लॉट स्विचेस अक्ष के साथ स्कैप्लेट से अलग है जिसमें से एक श्रेणीगत है?
DrSAR

4
@DrSAR एक हिस्टोग्राम कैसे एक बैरक से अलग है, या एक लाइन प्लॉट की तुलना में घनत्व प्लॉट है? आप अधिक मूलभूत ज्यामितीय (cf बर्टिन के सेमीगॉली ग्राफी ) के संदर्भ में कई मानक चार्ट प्रकारों का वर्णन कर सकते हैं , लेकिन यह किसी विशेष तरीके से किसी विशिष्ट को कमतर करने के लिए अंतर्दृष्टि नहीं बनाता है। इस मामले में, आप निरंतर डेटा के एक टुकड़े के खिलाफ दो जानकारी के वर्गीकरण की जानकारी (एक लंबवत, एक साजिश के चरित्र के आकार से) की साजिश रच रहे हैं। जबकि अधिकांश सॉफ्टवेयर पैकेजों में आप इसे बनाने के लिए एक स्कैल्पलॉट को हैक कर लेते हैं, लेकिन यह सबसे सशक्त रूप से स्कैटरप्लॉट नहीं होता है।
अरी बी। फ्रीडमैन

2
@ gsk3 को कर्कश आवाज करना मतलब नहीं था। वास्तव में, मैं अब (ग्राफिक्स और इसी तरह के कार्यों के व्याकरण के बारे में अधिक पढ़ने के बाद) महसूस करता हूं कि यह उच्च-स्तरीय भेद प्रस्तुति के लिए काफी महत्वपूर्ण हो सकता है। यह दिखाने के लिए धन्यवाद।
DrSAR

@ डसर और मेरा मतलब रक्षात्मक नहीं था। एसओ टिप्पणियों की प्रकृति मुझे लगता है ;-)
अरी बी। फ्रीडमैन

56

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

मुझे लगता है कि क्योंकि कभी-कभी आपका डेटा रैखिक के बजाय स्वाभाविक रूप से ध्रुवीय होता है - उदाहरण के लिए, यह चक्रीय है (कई दिनों में 24-घंटे दिन के दौरान एक्स-निर्देशांक का प्रतिनिधित्व करता है), या डेटा पहले एक ध्रुवीय सुविधा स्थान पर मैप किया गया था।

यहाँ एक उदाहरण है। यह प्लॉट एक वेबसाइट के घंटे के माध्यम से यातायात की औसत मात्रा दिखाता है। दोनों स्पाइक्स को रात 10 बजे और रात 1 बजे नोटिस करें। साइट के नेटवर्क इंजीनियरों के लिए, वे महत्वपूर्ण हैं; यह भी महत्वपूर्ण है कि वे एक दूसरे के पास होते हैं (सिर्फ दो घंटे अलग)। लेकिन अगर आप एक पारंपरिक समन्वय प्रणाली पर समान डेटा प्लॉट करते हैं, तो यह पैटर्न पूरी तरह से छुपाया जाएगा - रैखिक रूप से प्लॉट किए गए, ये दो स्पाइक्स 20 घंटे अलग होंगे, जो कि वे हैं, हालांकि वे लगातार दो दिनों के अलावा सिर्फ दो घंटे भी हैं। ऊपर दिया गया ध्रुवीय चार्ट इसे एक पारमार्थिक और सहज तरीके से दिखाता है (एक किंवदंती आवश्यक नहीं है)।

ध्रुवीय चार्ट 1 घंटे और 22 घंटे की चोटियों के साथ साइट ट्रैफ़िक दिखा रहा है

आर का उपयोग करके इस तरह के प्लॉट बनाने के दो तरीके (जो मुझे पता हैं) हैं (मैंने w / R के ऊपर प्लॉट बनाया)। आधार या ग्रिड ग्राफिक सिस्टम में से किसी एक को अपने स्वयं के फ़ंक्शन को कोड करना है। वे अन्य तरीके, जो आसान है, परिपत्र पैकेज का उपयोग करना है । आपके द्वारा उपयोग किया जाने वाला कार्य ' rose.diag ' है:

data = c(35, 78, 34, 25, 21, 17, 22, 19, 25, 18, 25, 21, 16, 20, 26, 
                 19, 24, 18, 23, 25, 24, 25, 71, 27)
three_palettes = c(brewer.pal(12, "Set3"), brewer.pal(8, "Accent"), 
                   brewer.pal(9, "Set1"))
rose.diag(data, bins=24, main="Daily Site Traffic by Hour", col=three_palettes)

4
आपके कोड को कॉपी करते हुए, मुझे एक बहुत अलग प्लॉट मिलता है (जो कि बहुत बदसूरत है); किसी भी विचार क्यों? मुझे यह चेतावनी मिलती है: 1: as.circular (xx [, 1]) में: किसी ऑब्जेक्ट को निम्न घटकों के लिए डिफ़ॉल्ट मान का उपयोग करते हुए वर्ग 'परिपत्र' के लिए मजबूर किया जाता है: प्रकार: 'कोण' इकाइयाँ: 'रेडियंस' टेम्पलेट: ' कोई नहीं 'मोडुलो:' एसिस 'शून्य: 0 रोटेशन:' काउंटर 'गुलाब। दादागड्टा 24 डेली साइट ट्रैफिक द्वारा ऑथोरथ्री_प्लेट्स
डेटायोडा

मेरी भी यही समस्या है।
क्रेयोला

आप एक लाइन-प्लॉट के साथ भी ऐसा कर सकते हैं। पढ़ने में थोड़ा कठिन हो सकता है, लेकिन यह वास्तव में अधिक दानेदार डेटा, या एक चक्र से अधिक के दौर से गुजरने वाले डेटा के लिए बहुत बढ़िया हो सकता है (उदाहरण के लिए दस चक्रों की साजिश करें, फिर उनका औसत प्लॉट करें)।
n

1
मुझे प्लॉट की नकल करने में भी परेशानी हुई। मैंने अंततः निर्णय लिया कि ggplot2 का उपयोग करना आसान था। मैंने कोड और परिणामों के साथ Rpubs पर एक छोटा डेमो छोड़ा है: rpubs.com/mattbagg/circular
MattBagg

1
ggplot2 समतुल्य:qplot(y=data, x=1:length(data), fill=factor(1:length(data)), stat='identity', geom='bar') + coord_polar()
n

54

यदि आपके स्कैटर प्लॉट में इतने सारे बिंदु हैं कि यह पूरी तरह गड़बड़ हो जाता है, तो स्मूथ स्कैटर प्लॉट देखें। यहाँ एक उदाहरण है:

library(mlbench) ## this package has a smiley function
n <- 1e5 ## number of points
p <- mlbench.smiley(n,sd1 = 0.4, sd2 = 0.4) ## make a smiley :-)
x <- p$x[,1]; y <- p$x[,2]
par(mfrow = c(1,2)) ## plot side by side
plot(x,y) ## left plot, regular scatter plot
smoothScatter(x,y) ## right plot, smoothed scatter plot

hexbinपैकेज (@Dirk Eddelbuettel ने सुझाव दिया) ही उद्देश्य के लिए प्रयोग किया जाता है, लेकिन smoothScatter()लाभ यह है कि के अंतर्गत आता है है graphicsपैकेज, और इस तरह मानक आर स्थापना का हिस्सा है।

स्माइली एक नियमित या चिकनी बिखरी साजिश के रूप में


6
पूर्णता के लिए, आप इस बिंदु को पारदर्शिता (अल्फा) का उपयोग करके ggplot में भी प्राप्त कर सकते हैं। ज्यामितीय बिंदु के साथ संयोजन में।
पॉल हीमस्ट्रा

1
क्या यह कर्नेल घनत्व अनुमान के समान है, या समान है?
'18:02 पर एंडोलिथ

30

स्पार्कलाइन और अन्य टफ्ट विचार के बारे में, CRAN पर YaleToolkit पैकेज कार्य करता है sparklineऔर sparklines

एक और पैकेज जो बड़े डेटासेट के लिए उपयोगी होता है, वह है बड़ी चतुराई से ' बिट्स ' डेटा को बकेट में डेटासेटसेट से निपटने के लिए जो भोले स्कैल्पल के लिए बहुत बड़ा हो सकता है।


4
चिंगारी को +1। मैं वर्तमान में एक ऐसे पैकेज पर काम कर रहा हूं जो R-- में स्पार्कलाइन निर्माण पर केंद्रित है - वे स्विवे रिपोर्ट में तालिकाओं के लिए बहुत अच्छा जोड़ते हैं।
शार्प

1
ठंडा! मैं बहुत खुश नहीं हूँ कि जय के पास येलटुलकिट में क्या है और टेबल में स्पार्कलाइन्स रखना पसंद करेंगे!
डिर्क एडल्डबुलेटेल

मैंने अभी-अभी plotअपने प्रश्न के अपडेट में केवल स्पार्कलाइन्स बनाने का एक तरीका प्रलेखित किया है , इस टफ्टे फोरम पोस्ट
बेन '

1
Hmisc::latex()से उत्पादन के संस्करण Hmisc::describeएक मिनी हिस्टोग्राम तालिका में शामिल हो जाता है भी शामिल है।
IRTFM

28

वायलिन भूखंड (जो कर्नेल घनत्व के साथ बॉक्स भूखंडों को मिलाते हैं) अपेक्षाकृत विदेशी और बहुत अच्छे हैं। Vioplot आर में पैकेज आप उन्हें बहुत आसानी से बनाने के लिए अनुमति देता है।

यहाँ एक उदाहरण है (विकिपीडिया लिंक भी एक उदाहरण दिखाता है):

यहां छवि विवरण दर्ज करें


3
वायलिन भूखंड भी जाली पैकेज के माध्यम से उपलब्ध हैं:bwplot(... panel = panel.violin)
डेविड जे।

3
शीघ्र ही वायलिन भूखंडों के ggplot2 संस्करण github.com/wch/ggplot2/wiki/geom_violin
रोमन लुसट्रिक

मैं पतले वायलिन प्लॉट्स इतने उपयोगी नहीं हैं, मुझे इसके बजाय घबराहट के साथ सभी डॉट्स दिखाना पसंद है।
नक्स

25

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

आप इसे http://learnr.wordpress.com/ पर कैसे बना सकते हैं, इसके बारे में पढ़ सकते हैं , लेकिन यह ऐसा दिखता है जैसे:

वैकल्पिक शब्द


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

7
एक बम्प चार्ट रैंक किए गए डेटा का एक समानांतर समन्वित प्लॉट है।
हैडली

1
यह मुझे स्लोपग्राफ की याद दिलाता है जो समय के साथ रैंकिंग परिवर्तन या रैंकिंग के बीच संबंधों का प्रतिनिधित्व करने के लिए अच्छा है: charliepark.org/slopegraphs
topchef

21

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

library(lattice)
library(taRifx)
compareplot(~weight | Diet * Time * Chick, 
  data.frame=cw , 
  main = "Chick Weights",
  box.show.mean=FALSE,
  box.show.whiskers=FALSE,
  box.show.box=FALSE
  )

compareplot

इस प्रश्न को बनाने के अन्य तरीकों (टफ्टे बॉक्सप्लेट के अन्य प्रकार सहित) पर चर्चा की गई है


@daroczig धन्यवाद। इन दिनों में से एक मैं इसे अलग-अलग समूहों के विन्यास लेने के लिए फिर से लिखूँगा। जब से मैंने उस फंक्शन को लिखा है मैंने बहुत कुछ सीखा है!
अरी बी। फ्रीडमैन

1
मुझे टफ्स की तुलना में आपके प्लॉट बहुत अच्छे लगते हैं, जो हास्यास्पद रूप से पढ़ने में कठिन हैं। मुझे अभी भी लगता है कि Tukey-style boxplots बेहतर हैं, हालांकि एक अच्छा समझौता कुछ ऐसा हो सकता है जो आपके यहाँ है, लेकिन 1px ऑफसेट के बजाय बॉक्स के लिए 3px चौड़ी लाइनें हैं। और मुझे लगता है कि मंझला के लिए 1px चौड़ी क्षैतिज रेखा शायद नटखट है, और अधिक सटीक है।
n

19

हमें प्यारा और (ऐतिहासिक रूप से) महत्वपूर्ण स्टेम-एंड-लीफ प्लॉट के बारे में नहीं भूलना चाहिए। आप डेटा घनत्व और आकार का एक सीधा संख्यात्मक अवलोकन प्राप्त करते हैं (निश्चित रूप से यदि आपका डेटा सेट बड़ा नहीं है तो लगभग 200 अंक)। आर में, फ़ंक्शन stemआपके स्टेम-एंड-लीफ डिस्कले (कार्यक्षेत्र में) का उत्पादन करता है। मैं एक ग्राफिक डिवाइस में इसे सीधे खींचने के लिए gstemपैकेज fmsb से फ़ंक्शन का उपयोग करना पसंद करता हूं । नीचे एक स्टेम-बाय-लीफ डिस्प्ले में एक ऊदबिलाव तापमान तापमान विचरण (डेटा आपके डिफ़ॉल्ट डेटासेट में होना चाहिए):

  require(fmsb)
  gstem(beaver1$temp)

यहां छवि विवरण दर्ज करें


18

एक बार में कई समय श्रृंखला की कल्पना के लिए क्षितिज रेखांकन (पीडीएफ)।

बहुभिन्नरूपी विश्लेषण के लिए समानांतर निर्देशांक भूखंड (पीडीएफ)।

आकस्मिक तालिकाओं को देखने के लिए एसोसिएशन और मोज़ेक भूखंड, ( वीसीडी पैकेज देखें)


15

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


14

छोटे भूखंड! R मदद से उदाहरण:

boxplot(count ~ spray, data = InsectSprays, col = "lightgray")

मेरी राय में यह डेटा पर एक त्वरित नज़र रखने या वितरण की तुलना करने का सबसे आसान तरीका है। अधिक जटिल वितरण के लिए एक एक्सटेंशन कहा जाता है vioplot


2
बीनप्लॉट का जिक्र यहां किया जा सकता है जैसे कि jstatsoft.org/v28/c01/paper और cran.r-project.org/web/packages/beanplot/index.html
radek

Boxplots कि वे नहीं कर रहे हैं underused हैं? मेरा मतलब है कि, कई कागजात में बार चार्ट का उपयोग डेटा के लिए किया जाता है जिसे बॉक्सप्लेट किया जाना चाहिए, लेकिन वे अभी भी बहुत सामान्य हैं।
n

11

मोज़ेक प्लॉट मुझे उल्लिखित सभी चार मानदंडों को पूरा करने के लिए लगता है। मोज़ेकप्लॉट के तहत आर में उदाहरण हैं।


3
मोज़ेक भूखंडों का एक बेहतर कार्यान्वयन vcd लाइब्रेरी (फ़ंक्शन नाम 'मोज़ेक') में है। इसमें बहुत अधिक लचीली विधि हस्ताक्षर है और इसे ग्रिड ('आधार' ग्राफिक्स सिस्टम के बजाय) में लागू किया गया है।
डग १g

10

एडवर्ड टफ्टे के काम और विशेष रूप से इस पुस्तक की जाँच करें

आप उसकी यात्रा की प्रस्तुति को भी देख सकते हैं । यह काफी अच्छा है और इसमें उनकी चार किताबों का बंडल शामिल है। (मैं कसम खाता हूँ कि मैं उनके प्रकाशक का मालिक नहीं हूँ!)

वैसे, मुझे उसकी स्पार्कलाइन डेटा विज़ुअलाइज़ेशन तकनीक पसंद है। आश्चर्य! Google ने पहले से ही इसे लिखा है और इसे Google कोड पर डाल दिया है


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