मैं समय के साथ दैनिक आधार पर विज्ञापनों के एक समूह के लिए खर्च और लाभप्रदता डेटा ग्राफ़ करने का प्रयास कर रहा हूं। किसी दी गई दिनांक सीमा के लिए, मैं सीमा के माध्यम से लूप करता हूं और एक दिनांक फ़्रेम बनाता हूं। इनमें से प्रत्येक तालिका को अलग डेटा फ़्रेम के रूप में एक सूची में जोड़ा जाता है।

यहाँ कुछ नमूना कोड है:

l <- list() df1 <- tribble( ~Ad, ~Spend, ~Profitability, "Cat", 10000, 0.21, "Movie", 20000, -0.05, "Dog", 8000, 0.07) l[1] <- list(df1) df2 <- tribble( ~Ad, ~Spend, ~Profitability, "Cat", 14000, 0.25, "Movie", 21000, -0.08, "Dog", 8000, 0.09, "TV", 4000, .31) l[2] <- list(df2) df3 <- tribble( ~Ad, ~Spend, ~Profitability, "Cat", 13000, 0.18, "Movie", 23000, -0.11, "TV", 7000, .25) l[3] <- list(df3)

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

यह स्कैटर ग्राफ में से एक का एक उदाहरण है:

ggplot(as.data.frame(l[1]), aes(x = Spend, y = Profitability, color = Ad)) + geom_point(size = 3) + xlim(0, 30000) + scale_y_continuous(labels = scales::percent, limits = c(-0.25, 0.5)) + geom_text(aes(label = Ad), size = 2, vjust = -2)

मेरा प्रश्न यह है कि, मैं इस gif को कैसे चेतन कर सकता हूं ताकि अंक दिन-प्रतिदिन निरंतर चलते रहें (अर्थात 'बिल्ली' बिखराव बिंदु (10000,0.21) से (14,000, 0.25) से (13,000, 0.18) हो जाएगा?

एक अन्य जटिलता यह है कि विज्ञापनों का समूह आवश्यक रूप से दिन-प्रतिदिन (तालिका से तालिका) समान नहीं होता है क्योंकि कुछ विज्ञापन निश्चित दिनों में बिल्कुल भी खर्च नहीं करते हैं। यदि कोई विज्ञापन किसी निश्चित पर नहीं है, तो मैं संबंधित स्कैटर पॉइंट (0,0) की यात्रा करता हूं।

शुक्रिया!

1
mission1997 25 अक्टूबर 2019, 21:48

1 उत्तर

सबसे बढ़िया उत्तर
library(purrr); library(gganimate)
l %>%
  map_df(magrittr::extract, .id = "table",
         c("Ad", "Spend", "Profitability")) %>%
  complete(table, Ad, fill = list(Spend = 0, Profitability = 0)) %>%
  ggplot(aes(Spend, Profitability, color = Ad)) +
  geom_point() +
  transition_states(table)

enter image description here

1
Jon Spring 26 अक्टूबर 2019, 01:05