说我有两个htmlwidgets
# Load energy projection data
# Load energy projection data
library(networkD3)
URL <- paste0(
"https://cdn.rawgit.com/christophergandrud/networkD3/",
"master/JSONdata/energy.json")
Energy <- jsonlite::fromJSON(URL)
# Plot
sankeyNetwork(Links = Energy$links, Nodes = Energy$nodes, Source = "source",
Target = "target", Value = "value", NodeID = "name",
units = "TWh", fontSize = 12, nodeWidth = 30)
Run Code Online (Sandbox Code Playgroud)
和
library(leaflet)
data(quakes)
# Show first 20 rows from the `quakes` dataset
leaflet(data = quakes[1:20,]) %>% addTiles() %>%
addMarkers(~long, ~lat, popup = ~as.character(mag))
Run Code Online (Sandbox Code Playgroud)
我想将它们并排放置在html页面中。我怎样才能做到这一点?我可以使用iframe吗?其他?
尝试在Mozilla Firefox中打开与knitr一起放置的html文档时,我收到以下错误.该错误是由plotly包组成的图元素的结果.
unknownError: error occurred while processing
'getCachedMessages: out of memory
Run Code Online (Sandbox Code Playgroud)
rmarkdown文件的全部内容(默认其他所有内容):
library(plotly)
library(ggplot2)
theData <- data.frame(A=1:26, B=letters, C=rnorm(26,19))
g<-ggplot(theData, aes(x=A, y=C)) +
geom_point()
ggplotly(g)
Run Code Online (Sandbox Code Playgroud)
我有最新版本的Firefox.我似乎没有查看其他页面上有图形元素的问题.该页面在IE中运行,没问题.
当我使用NetworkD3绘制有向图时,边缘不是定向的,我该如何修复它?一个例子 :
library(networkD3)
data(MisLinks)
data(MisNodes)
forceNetwork(Links = MisLinks, Nodes = MisNodes,
Source = "source", Target = "target",
Value = "value", NodeID = "name",
Group = "group", opacity = 0.8)
Run Code Online (Sandbox Code Playgroud)
我希望结果被定向这是有向图的定义:
"有向图是图形,即连接在一起的一组对象(称为顶点或节点),其中所有边缘都从一个顶点指向另一个顶点.有向图有时被称为有向图或有向网络.
我希望边缘像箭一样,我怎么能在networkD3中做到这一点,我希望它很清楚.
谢谢.
我希望能够做类似这个答案的事情,但不使用闪亮的。我还想绑定打开与数据点关联的超链接的 onclick 事件。
我正在使用saveWidget函数 fromhtmlwidgets并且知道我可以使用
包中的appendContent函数插入 javascript 代码htmltools。
这是一个小示例代码:
library(ggplot2)
library(plotly)
library(htmlwidgets)
library(htmltools)
path.test.results <- "C:\\Users\\img\\"
myData <- data.frame(x=c(1,2,3), y=c(3,2,1))
myLinks <- c("https://www.google.com/", "https://stackoverflow.com/", "https://www.r-project.org/")
ggp <- ggplot(data=myData, aes(x=x, y=y)) + geom_point()
ply <- plotly_build(ggp)
ply$elementId <- "PlotlyGraph"
#javascript <- HTML('<script>document.getElementById("htmlwidget_container").innerHTML = "test";</script>')
javascript <- HTML(paste(
paste('<button type="button" onclick="document.getElementById(',"'", 'PlotlyGraph', "'", ').style.display=',
"'", 'none', "'", '">Hide Plot</button>', sep=''),
paste('<button type="button" onclick="document.getElementById(',"'", 'PlotlyGraph', "'", ').style.display=',
"'", 'block', "'", '">Show …Run Code Online (Sandbox Code Playgroud) 我使用rpivotTablepackage.json 创建一个交互式数据透视表。但是,我发现某些聚合器和 renderName 对于我的用户来说是不必要的。我想删除它们。例如,我想从聚合器下拉菜单中删除“平均”。
这是我的例子:
library(shiny)
library(rpivotTable)
df <- iris
ui <- fluidPage(
fluidRow(
column(width=10, rpivotTableOutput("pivot"))
)
)
server <- function(input, output, session) {
output$pivot<-renderRpivotTable({
rpivotTable(df,
rendererName="Heatmap",
cols=c("Species"),
rows=c("Petal.Width"),
aggregatorName="Count",
hiddenFromAggregators=["Average"]
)
})
}
shinyApp(ui = ui, server = server)
Run Code Online (Sandbox Code Playgroud)
我注意到似乎有一些名为“hiddenFromAggregators”的相关参数,但我不知道如何在 R/Shiny 环境中应用它。
这是我找到“hiddenFromAggregators”的地方。
https://github.com/nicolaskruchten/pivottable/wiki/Parameters
我正在用 R 制作桑基图,但对节点名称背后的含义有疑问。
下面是我在网上找到的一个例子:
library(networkD3)
nodes = data.frame("name" =
c("Node A", # Node 0
"Node B", # Node 1
"Node C", # Node 2
"Node D"))# Node 3
links = as.data.frame(matrix(c(
0, 1, 10, # Each row represents a link. The first number
0, 2, 20, # represents the node being conntected from.
1, 3, 30, # the second number represents the node connected to.
2, 3, 40),# The third number is the value of the node
byrow = TRUE, …Run Code Online (Sandbox Code Playgroud) 有没有办法使用节点为纽带,以使用功能的外部网站的方式forceNetwork()在networkD3包r?我在想也许修改clickAction?
示例数据:
library(networkD3)
data(MisLinks)
data(MisNodes)
# Create a random URL in the nodes dataset
MisNodes$URL <- paste0("http://www.RANDOMLINK_", sample(1:100, NROW(MisNodes)), ".com")
head(MisNodes)
MyClickScript <- 'alert(d.index)'
forceNetwork(Links = MisLinks, Nodes = MisNodes,
Source = "source", Target = "target",
Value = "value", NodeID = "name",
Group = "group", opacity = 0.8,
clickAction = MyClickScript)
Run Code Online (Sandbox Code Playgroud)
期望的结果:当用户点击节点时,将打开一个新选项卡(例如window.open)指向该节点的关联URL - 我如何clickAction指向MisNodes$URL[d.index]?
我正在使用Network的networkD3库来创建Sankey网络.虽然这对我来说非常好用,但我现在遇到了一个问题,即分配属性"NoteID"和/或"NoteGroup"来分组和分配颜色,如https://christophergandrud.github.io/networkD3/#sankey所示
以下代码显示了创建Sankey图的4个示例,只有"Sankey4"按设计工作,即没有颜色:
library(networkD3)
#Unique list of nodes
my_nodes = structure(list(name = c("HawaiTEST", "AMSVOASMPP01", "App1",
"Transfer", "Transferred_tel__63null_",
"Transferred_tel__631100107_",
"AMSVOASMPP02",
"Transferred_tel__631100108_",
"Transferred_tel__631100106_",
"Transferred_tel__631100104_",
"Transferred_tel__631100105_",
"FarEndDisconnect",
"FarEndDisconnect_Hangup", "DutchAOS",
"SwedenAOS",
"Transferred_tel__63000_")), class =
c("tbl_df", "tbl", "data.frame"
), row.names = c(NA, -16L), .Names = "name")
# Network
my_links = structure(list(key = c("0_1", "0_6", "1_13", "1_14", "1_2", "11_12",
"13_11", "13_3", "14_11", "14_3", "2_11",
"2_3", "3_10", "3_15",
"3_4", "3_5", "3_7", "3_8", "3_9", "6_13",
"6_2"), source = c(0L,
0L, 1L, 1L, 1L, 11L, 13L, 13L, 14L, …Run Code Online (Sandbox Code Playgroud) 我正在使用 formattable 包直接从 R 制作一些报告,我需要使用 normalize_bar“样式”的列具有相同的宽度,以便可以比较列之间的值。
以下示例显示了具有非常相似的值(最小值和最大值相等)但宽度不同的两列,丢失了条形图的图形细节(“Test.number.1.score”和“test2_score”)。
library(formattable)
df <- data.frame(
id = 1:10,
name = c("Bob", "Ashley", "James", "David", "Jenny",
"Hans", "Leo", "John", "Emily", "Lee"),
age = c(28, 27, 30, 28, 29, 29, 27, 27, 31, 30),
grade = c("C", "A", "A", "C", "B", "B", "B", "A", "C", "C"),
Test.number.1.score = c(8.9, 9.5, 9.6, 8.9, 9.1, 9.3, 9.3, 9.9, 8.5, 8.6),
test2_score = c(9.1, 9.1, 9.2, 9.1, 8.9, 8.5, 9.9, 9.3, 9.1, 8.6),
final_score = c(9, 9.3, 9.4, 9, …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用networkD3库在R中构建sankey图。
我有以下数据
print(nodes1)
name
1 as
2 sdf
3 wer
4 xc
5 sd
6 er
print(links)
source target value
1 0 5 112
2 0 4 848
3 0 4 661
4 0 4 33
5 0 3 291
6 1 5 23
7 1 4 983
8 1 3 859
9 1 3 35
10 2 4 537
Run Code Online (Sandbox Code Playgroud)
因此,当我尝试使用以下代码创建sankeyNetwork时
sankeyNetwork(Links = links1, Nodes = nodes1,
Source = "source", Target = "target",
Value = "value", NodeID = "name",
fontSize= …Run Code Online (Sandbox Code Playgroud) htmlwidgets ×10
r ×10
networkd3 ×5
plotly ×2
d3.js ×1
formattable ×1
html ×1
hyperlink ×1
javascript ×1
knitr ×1
mozilla ×1
nodes ×1
r-markdown ×1
report ×1
rpivottable ×1
shiny ×1