Диаграмма Санки с использованием Plotly

Я хочу создать простую диаграмму Санки, используя этот фрагмент данных и специально составленный пакет таким образом, чтобы действие ABC указывало на Resouce "R5", "BVN" на "R1" и "IOP" на "R6". Я следовал за постом https://plot.ly/r/sankey-diagram/, но я просто не могу автоматизировать скип с этими данными. Буду признателен, если вы поможете мне сделать это без JSON. Данные прилагаются ниже.

library(plotly)
library(rjson)
json_file <-"https://raw.githubusercontent.com/plotly/plotly.js/master/test/image/mocks/sankey_energy.json"
json_data <- fromJSON(paste(readLines(json_file), collapse=""))

p <- plot_ly(
type = "sankey",
domain = c(
  x =  c(0,1),
  y =  c(0,1)
),
orientation = "h",
valueformat = ".0f",
valuesuffix = "TWh",

node = list(
  label = json_data$data[[1]]$node$label,
  color = json_data$data[[1]]$node$color,
  pad = 15,
  thickness = 15,
  line = list(
    color = "black",
    width = 0.5
  )
),

link = list(
  source = json_data$data[[1]]$link$source,
  target = json_data$data[[1]]$link$target,
  value =  json_data$data[[1]]$link$value,
  label =  json_data$data[[1]]$link$label
)
) %>% 
   layout(
title = "Energy forecast for 2050<br>Source: Department of Energy & Climate Change, Tom Counsell via <a href='https://bost.ocks.org/mike/sankey/'>Mike Bostock</a>",
font = list(
  size = 10
),
xaxis = list(showgrid = F, zeroline = F),
yaxis = list(showgrid = F, zeroline = F)
)

Activity    Resource    Value
ABC         R2          40
BVN         R4          53
NCB         R5          45
UNI         R1          22
IOP         R3          34
GAD         R6          54

0 ответов

Другие вопросы по тегам