'How can I plot the annual growth rate in R?

I wrote a function to calculate annual growth for my parameters:

growth.rate <- function(data){
  for (i in c("Area", "Rainfall", "Yield")) {
    T1 <- max(data$Year) - min(data$Year) + 1
    FV <- data[which(data$Year == max(data$Year)),i]
    SV <- data[which(data$Year == min(data$Year)),i]
    cagr <- ((FV/SV)^(1/T1)) -1
    print(cagr)}
}

But I need to plot the annual growth rate of Area, Yield and Rainfall for 5 different crops.

I subset my dataset for the crops:

data1 <- df %>% 
  filter(Crop == "Sugarcane" | Crop == "Rice" | Crop == "Coconut " | Crop == "Wheat" | Crop== "Maize")

I want to make a plot similar to this one, thank you in advance.:

enter image description here

Here for sample of my dataset:

structure(list(X = c(2L, 5L, 7L, 12L, 14L, 16L, 18L, 23L, 26L, 
27L, 32L, 36L, 41L, 45L, 50L, 57L, 60L, 64L, 65L, 71L, 77L, 81L, 
84L, 87L, 92L, 94L, 96L, 98L, 103L, 107L, 111L, 112L, 120L, 127L, 
129L, 134L, 138L, 139L, 144L, 148L, 149L, 154L, 158L, 159L, 164L, 
168L, 172L, 177L, 181L, 185L, 186L, 194L, 201L, 9831L, 9832L, 
9834L, 9838L, 9840L, 9841L, 9843L), State = c("Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Andaman and Nicobar Islands", "Andaman and Nicobar Islands", 
"Arunachal Pradesh", "Arunachal Pradesh", "Arunachal Pradesh", 
"Arunachal Pradesh", "Arunachal Pradesh", "Arunachal Pradesh", 
"Arunachal Pradesh"), Year = c(2000L, 2000L, 2000L, 2001L, 2001L, 
2001L, 2002L, 2002L, 2002L, 2003L, 2003L, 2004L, 2004L, 2005L, 
2005L, 2006L, 2006L, 2010L, 2010L, 2010L, 2010L, 2000L, 2000L, 
2000L, 2001L, 2001L, 2001L, 2006L, 2006L, 2006L, 2010L, 2010L, 
2010L, 2010L, 2002L, 2002L, 2002L, 2003L, 2003L, 2003L, 2004L, 
2004L, 2004L, 2005L, 2005L, 2005L, 2006L, 2006L, 2006L, 2010L, 
2010L, 2010L, 2010L, 2004L, 2004L, 2004L, 2004L, 2005L, 2005L, 
2005L), Season = c("Kharif     ", "Whole Year ", "Whole Year ", 
"Kharif     ", "Whole Year ", "Whole Year ", "Kharif     ", "Whole Year ", 
"Whole Year ", "Kharif     ", "Whole Year ", "Kharif     ", "Whole Year ", 
"Kharif     ", "Whole Year ", "Whole Year ", "Whole Year ", "Autumn     ", 
"Autumn     ", "Rabi       ", "Whole Year ", "Kharif     ", "Whole Year ", 
"Whole Year ", "Kharif     ", "Whole Year ", "Whole Year ", "Kharif     ", 
"Whole Year ", "Whole Year ", "Autumn     ", "Autumn     ", "Rabi       ", 
"Whole Year ", "Kharif     ", "Whole Year ", "Whole Year ", "Kharif     ", 
"Whole Year ", "Whole Year ", "Kharif     ", "Whole Year ", "Whole Year ", 
"Kharif     ", "Whole Year ", "Whole Year ", "Kharif     ", "Whole Year ", 
"Whole Year ", "Autumn     ", "Autumn     ", "Rabi       ", "Whole Year ", 
"Kharif     ", "Kharif     ", "Rabi       ", "Whole Year ", "Kharif     ", 
"Kharif     ", "Rabi       "), Crop = c("Rice", "Coconut ", "Sugarcane", 
"Rice", "Coconut ", "Sugarcane", "Rice", "Coconut ", "Sugarcane", 
"Rice", "Coconut ", "Rice", "Coconut ", "Rice", "Coconut ", "Coconut ", 
"Sugarcane", "Rice", "Sugarcane", "Maize", "Coconut ", "Rice", 
"Coconut ", "Sugarcane", "Rice", "Coconut ", "Sugarcane", "Rice", 
"Coconut ", "Sugarcane", "Rice", "Sugarcane", "Maize", "Coconut ", 
"Rice", "Coconut ", "Sugarcane", "Rice", "Coconut ", "Sugarcane", 
"Rice", "Coconut ", "Sugarcane", "Rice", "Coconut ", "Sugarcane", 
"Rice", "Coconut ", "Sugarcane", "Rice", "Sugarcane", "Maize", 
"Coconut ", "Maize", "Rice", "Wheat", "Sugarcane", "Maize", "Rice", 
"Wheat"), Area = c(102, 18168, 1, 83, 18190, 1, 189.2, 18240, 
5, 52, 18284.74, 52.94, 18394.7, 2.09, 13876.57, 14358, 0.2, 
3.5, 13.4, 3.84, 14560, 10779, 6992, 141, 9718, 7015, 81, 6854.3, 
3575, 71.3, 6791, 73.33, 86.7, 3668, 10695.8, 7060, 455, 10509.37, 
7110, 268, 10681.98, 7156.7, 145.26, 8683.38, 7050.45, 128.02, 
921.87, 3483.09, 53.5, 1595.5, 67.5, 73, 3540, 2453, 3342, 30, 
5, 3000, 3400, 32), Production = c(321, 65100000, 2, 300, 64430000, 
1, 510.84, 67490000, 40, 90.17, 68580000, 72.57, 52380000, 12.06, 
52030000, 59370000, 0.5, 10, 41.75, 18.22, 71300000, 31863, 23900000, 
3736, 27033, 25250000, 2379, 18995.62, 15400000, 1500, 20118, 
889.2, 96.4, 12700000, 31600.82, 26830000, 13760, 30760.7, 26660000, 
2879.52, 29119.66, 34750000, 1560, 25870.98, 26430000, 2448.2, 
2539.64, 14190000, 999.5, 3788, 402, 253, 1.1e+07, 2674, 1914, 
60, 50, 2700, 5000, 65), Rainfall = c(2763.2, 2763.2, 2763.2, 
3080.9, 3080.9, 3080.9, 2620.2, 2620.2, 2620.2, 2355.9, 2355.9, 
2460.1, 2460.1, 2954.7, 2954.7, 2404.7, 2404.7, 3157.1, 3157.1, 
3157.1, 3157.1, 2763.2, 2763.2, 2763.2, 3080.9, 3080.9, 3080.9, 
2404.7, 2404.7, 2404.7, 3157.1, 3157.1, 3157.1, 3157.1, 2620.2, 
2620.2, 2620.2, 2355.9, 2355.9, 2355.9, 2460.1, 2460.1, 2460.1, 
2954.7, 2954.7, 2954.7, 2404.7, 2404.7, 2404.7, 3157.1, 3157.1, 
3157.1, 3157.1, 2545.7, 2545.7, 2545.7, 2545.7, 2335.5, 2335.5, 
2335.5), Yield = c(3.14705882352941, 3583.22324966975, 2, 3.6144578313253, 
3542.05607476636, 1, 2.7, 3700.10964912281, 8, 1.73403846153846, 
3750.66859031083, 1.37079712882508, 2847.5593513349, 5.77033492822967, 
3749.48564378661, 4134.97701629753, 2.5, 2.85714285714286, 3.11567164179104, 
4.74479166666667, 4896.97802197802, 2.95602560534372, 3418.19221967963, 
26.4964539007092, 2.78174521506483, 3599.42979330007, 29.3703703703704, 
2.77134353617437, 4307.69230769231, 21.0378681626928, 2.96245030187012, 
12.1260057275331, 1.1118800461361, 3462.37731733915, 2.95450737672731, 
3800.28328611898, 30.2417582417582, 2.92697849633232, 3749.64838255977, 
10.7444776119403, 2.72605453296112, 4855.58986683807, 10.7393638992152, 
2.9793674813264, 3748.69689168776, 19.1235744414935, 2.75487867052838, 
4073.96880356235, 18.6822429906542, 2.37417737386399, 5.95555555555556, 
3.46575342465753, 3107.34463276836, 1.0900937627395, 0.572710951526032, 
2, 10, 0.9, 1.47058823529412, 2.03125)), row.names = c(NA, 60L
), class = "data.frame")


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source