问题标签 [r2d3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
633 浏览

r - R Shiny + r2d3 包 - 不渲染图表

我一直在尝试使用 r2d3 包和 RShiny 渲染图表。代码运行没有错误,但图表没有显示。D3 可视化在 R 之外实现时有效。有人可以帮我让这个特定的图表工作吗?

我的 app.R 代码如下

在 .js 文件中,我替换了

基于r2d3 页面中的示例。页面底部显示的动画条形图示例对我来说非常有用。但这张图表没有。任何帮助将不胜感激

0 投票
1 回答
569 浏览

javascript - 在 d3 JavaScript 中读取外部数据 - R r2d3 用例

编辑:示例中使用的所有数据/代码的链接:https ://drive.google.com/open?id=16MpDptwV7m4nOkoT3ImlKffl4rYqc5ms

你好朋友和烘焙师,

我几乎是 D3 可视化的新手。我的背景都是 Plotly 和集成的 R 平台地块。我已经为 Shiny 应用程序编写了非常轻量级的 js/css,但我正在尝试扩展到更多自定义和免费的可视化方法。

因此,我一直在研究 r2d3 包以在 R 中进行 d3 集成。我搜索了所有示例,并仔细阅读了我在主存储库和概述页面中可以找到的任何文档:https://rstudio.github。 io/r2d3/文章/图库/日历/

但是,对于我的生活,我根本无法理解 js 是如何实际提取数据的

这里的一个例子:视觉,随后是生成它的脚本,最后是作为数据源提供的 csv 以进行可视化

视觉的: 视觉建构

calendar.js 脚本:

这是输入的 .csv

从 github 提取的 .csv 的屏幕截图

而且我知道这完全是我自己对 js 函数调用和数据处理的理解的来源,但这只是让我无所适从。我可以在其中看到一些 .data 初始化和函数调用,但我在哪里找不到任何关于这个可视化应该捕获什么的迹象。它如何知道哪一列表示日期?指定实际可视化的变量在哪里?

任何帮助在这里的暗示将不胜感激。我已经获得了一些 d3 教程,但任何指针至少可以让我玩那些比我构建的更智能的沙盒 :)

谢谢!

0 投票
1 回答
265 浏览

r - r2d3中的动态变量选择

我正在尝试使用 d3 示例脚本并将其转换为使用 r2d3 的绘图函数。我可以使用 r2d3 的“选项”参数将字符串传递给 d3 脚本,但我想不出一种传递表达式的方法(我认为,这对于使其成为通用绘图函数是必要的)。从这里的示例工作https://bl.ocks.org/john-guerra/17fe498351a3e70929e2e36d081e1067 我的 .js 脚本称为 scatter_matrix.js:

并且 scatter_matrix.css 是:

所以,如你所见,我变了

使得可以选择从图中排除的变量。然而,下面有

这是硬编码到脚本中的。我尝试使用

然后有

但这没有用。我习惯在 R 中使用 quasiquotation 来解决这类问题,但我不确定在 JS 中是否有办法做到这一点?d3 很棒,但是能够将脚本打包成函数将是……非常棒。

要重现这个情节,你应该只需要

0 投票
1 回答
609 浏览

r - 使用 r2d3 在 d3.js 中使用 R data.frame 对象

我试图了解如何使用 package 将 R 数据框传递给 d3.js 脚本r2d3r2d3条形图示例的扩展以访问data.frame对象中的变量会很有帮助。

代码:

js代码:

错误:

0 投票
1 回答
111 浏览

r - 是否有可能将导入的字体与 r2d3 一起使用?

我在 R 中使用 r2d3 库制作 d3 绘图并尝试更改字体。不幸的是,最后渲染的总是 Arial。有什么行之有效的方法可以让它发挥作用吗?

我在连接到 js 文件的 css 文件中试过这个:

添加 !important 没有帮助。

字体系列正确更改为“Fira Sans”,但在计算部分我可以看到呈现的字体是 Arial。

0 投票
1 回答
234 浏览

r2d3 - 将 r2d3 的 JavaScript 控制台输出渲染到浏览器控制台而不是可视化?

JavaScript 控制台输出r2d3直接呈现到 RStudio 查看器可视化中,而不是 JavaScript 控制台。请参阅文档

这似乎也是当

r2d3::r2d3(..., viewer = 'browser')

即,console.log()即使在浏览器中也不会输出到控制台。

是否有一种干净的方法来改变这种行为,以便将 D3.js 中的console.log()信息r2d3发送到浏览器控制台?

0 投票
0 回答
49 浏览

d3.js - 在折线图中拖动线:将线更新为新值?

另一个 d3.js 拖动/更新问题:我之前在创建折线图方面获得了帮助,您可以在其中拖动一个点并且连接线会调整。现在我正在尝试进一步修改它,以便可以拖动一个点(仅移动一个数据点)或拖动线以移动所有点/由所选线表示的整个系列。

我想我现在已经对大部分内容进行了排序 - 期望正确更新拖动的线。

在 linedrag 之后,数据已正确更新,但我无法根据需要重新绘制线条。我认为部分原因可能是由于使用 d3.line 函数来绘制连接线 - 我认为在连接线的路径和轴的路径之间发生了某种溢出。

这是更新行的代码,这些行部分地以神秘的方式工作:

所以:这有效但无效。首先选择暗线(tt:2)时,有一条正确形状的移动线等,但它的位置太低(我认为大约在 y 轴范围内?)并且旧的连接线不会消失,而 x -axis 路径确实消失了。新的(下部)线具有完整的功能,如果您移动与该线关联的点之一,该线将得到调整,您还可以再次移动该线并看到点和线移动......!?首先拖动浅蓝色线(tt:1)时,会发生同样的情况,但是当您重复拖动它时,y 轴路径也会消失,最终会出现一条完全正常工作的连接线,用于深蓝色(tt 2)系列......

完整代码的小提琴在这里:https ://jsfiddle.net/m931k6w2/

我 a) 对新出现的线相对于旧线、y 轴和数据中更新值的位置差异感到困惑,并且 b) 无法将连接线的路径与其他路径隔离开来,想知道我是否不应该找到不使用的解决方法:

但我一开始不知道如何画线。

非常感谢任何帮助!

0 投票
0 回答
228 浏览

d3.js - 在闪亮的应用程序中构建可缩放的旭日形

我正在使用闪亮构建一个 dataViz 应用程序,我想知道是否有可能使用包 r2d3 或其他什么嵌入可缩放的旭日形图?

我一直在尝试在这里实现代码https://bl.ocks.org/vasturiano/12da9071095fbd4df434e60d52d2d58d 但它不起作用,

有没有人做过类似的事情?

种类。

0 投票
0 回答
173 浏览

shiny - 如何使用 R2D3 使我的 Rshiny 应用程序中的用户输入与我的 R.js 文件动态交互?

当我运行预览选项时,我有一个 d3.js 脚本作为 R.js 运行良好,但我无法让它在 RShiny 中正常运行。输入没有重新渲染输出,颜色也不是我在 js 中设置的方式。我有一个包含多列的数据框,我想根据用户输入选择列,以输入 RShiny 中将调用 d3.js 的 R2D3 函数调用。

---我在一列中设置了带有id的csv(将始终被拉出),并为所有其他列设置了值,即使它们最初代表“行星半径”等值......所以我不不必处理更改列名。

下面的代码只是我尝试过的最新版本。在尝试为输入变量设置为df变量创建一个单独的反应块之前,我已经经历了很多事情,稍后将在使用df()的r2d3函数调用中调用该变量。在这一点上,我没有选择并且心不在焉。

我在 d3js 脚本或 Rshiny 中是否缺少某些东西?正如我在其他帖子中看到的那样,我已经使用 includeScript() 在 ui 中设置了脚本。

我正在使用的 d3 脚本在这里:https ://rstudio.github.io/r2d3/articles/gallery/bubbles/

我已经在我的驾驶室里尝试了所有东西(这并不多),我的意思是在这上面花了 20 个小时,但我无法让它工作。

)

首先,我只希望下拉菜单中的反应性起作用,如果您能帮助我使用此功能,我将设计其余部分。最终,我希望它是交互式的(点击功能,如气泡改变颜色,显示输出文本框)。

0 投票
1 回答
317 浏览

r - R2D3 与 D3.js 相比

我想在 R 中使用R2D3包,但我不确定这个包与 D3.js 库的关系。R2D3 是否以任何方式限制 D3 的功能?我们可以将 R 中的所有 D3 功能和特性与 R2D3 一起使用吗?