簡體   English   中英

如何根據R中的函數參數打印繪圖?

[英]How to to print a plot based on function arguments in R?

我正在嘗試構建一個儲蓄計算器。 最終,我想創建一個 RShiny 應用程序,但在此之前,我想確保代碼是完美的。 做我想做的,我必須使用三個塊,它們是:

ks <- function (x) { number_format(accuracy = 1,
                                   scale = 1/1000,
                                   big.mark = ",")(x) }
savings <- function(years,apr,initial,investment) {
   value <- numeric(years + 1)
   value[1] <- initial
   for (i in 1:years) value[i + 1] <- (value[i] + investment) * apr
   data.frame(year = 0:years, value)
}
savings(45.02,1.07,45000,15000)
ggplot(data=savings(45,1.07,45000,15000),aes(x=year,y=value))+geom_line()+ scale_x_continuous(breaks = seq(0, 100, by = 5)) +
  scale_y_continuous(labels = ks, breaks = seq(0, 400000000, by = 250000))+labs(x="Year",y="Value (thousands)")

我想生成 ggplot 作為“儲蓄”功能的一部分,但我不知道如何集成它。

您可以將數據幀保存在一個對象中並在ggplot使用它

library(ggplot2)

savings <- function(years,apr,initial,investment) {
   value <- numeric(years + 1)
   value[1] <- initial
   for (i in 1:years) value[i + 1] <- (value[i] + investment) * apr
   df <- data.frame(year = 0:years, value)

   ggplot(data=df,aes(x=year,y=value))+ geom_line() + 
    scale_x_continuous(breaks = seq(0, 100, by = 5)) +
    scale_y_continuous(labels = ks, breaks = seq(0, 400000000, by = 250000)) + 
    labs(x="Year",y="Value (thousands)")
}

savings(45.02,1.07,45000,15000)

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM