library(networkD3)
library(dplyr)
links <- data.frame(
  source=c("Maintenance", "Antennae", "Laundry", "Rental", "Interest", "Income", "Income", "Income", "Income", "Income", "Income", "Income", "Income", "Income", "Income", "Income"), 
  target=c("Income", "Income", "Income", "Income", "Income", "Property Taxes", "Mortgage Interest", "Daisy", "Alket", "Insurance", "Utilities", "Repairs", "Services", "Audit/Legal", "Reserves", "Sinking Fund"), 
  value=c(631751, 30600, 1800, 30000, 9000, 334581, 100620, 31673, 30000, 29000, 70912, 24400, 21628, 30200, 14000, 10000)
  )

nodes <- data.frame(name=c(as.character(links$source),
                           as.character(links$target)) %>% unique())
links$IDsource <- match(links$source, nodes$name)-1 
links$IDtarget <- match(links$target, nodes$name)-1
 
p <- sankeyNetwork(Links = links, Nodes = nodes,
              Source = "IDsource", Target = "IDtarget",
              Value = "value", NodeID = "name", fontSize = 12,
              sinksRight=FALSE)
p