问题标签 [ggalluvial]

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 投票
3 回答
769 浏览

r - 如何在冲积或桑基图中获得 y 轴上的百分比?

ggplot2冲积层

我使用 ggplot2 实现了这个图,我想将 y 轴更改为百分比,从 0% 到 100%,每 10 次中断一次。我知道我可以使用:

但我仍然遇到问题,因为在转换为百分比时,R 将 30000 解释为 30000%,所以如果限制为 100%,我的图表中什么也得不到。我该如何管理它?

我有一个这样的数据集:

可以使用此代码重现:

所以我没有可以管理的 y 轴变量。

这是我的代码和我获得的情节

在此处输入图像描述

有人可以帮我吗?

我使用真实数据得到了什么

这是: 在此处输入图像描述

最大值为 84%(而不是 100%)。我怎样才能使 y 轴达到 100% 并每 10% 损坏一次?

这是我得到的

在此处输入图像描述

我每 14% 得到一个奇怪的值。

0 投票
1 回答
246 浏览

r - 是否可以将 Shiny 应用程序中的工具提示添加到使用 ggalluvial 创建的 Sankey 图中?

我正在开发一个包含交互式桑基图的闪亮应用程序。我的困惑是:我更喜欢使用 ggalluvial 包生成的图的美感(尤其是通过某些因素轻松为链接着色的能力),但它本身不支持工具提示,用户可以在其中看到有关链接或节点的详细信息。单击或悬停在其上(如 networkd3 或 googleVis Sankey 图)。Plotly 不支持 geom_alluvium 和 geom_stratum,因此在这种情况下 ggplotly() 似乎不是一个选项。

我基本上没有 JavaScript 经验,所以如果这个问题过于模糊和开放,我深表歉意。我想知道在 Shiny 的 ggalluvial 图上启用工具提示需要什么。

更具体地说,这里是一个闪亮的应用程序的一些示例代码,其中包含一个基本的桑基图。我想要的行为是在用户悬停(或单击)两个节点之间的链接时启用工具提示,该链接提供有关流 ID 的一些信息。例如,在下面的屏幕截图中,我希望1,3当用户将鼠标悬停在左上角箭头指示的区域上,以及7,9当他们悬停在左下角的箭头上时,会出现一个框。这些是ID对应于它们悬停的流的列中的值。

有关如何执行此操作的任何指导?

截屏

在此处输入图像描述

箭头表示工具提示应出现在何处的示例。

代码

0 投票
1 回答
59 浏览

r - R:如何在ggplots中按另一列(因子或字符标签)对字符列进行排序

我正在尝试使用 ggplot 绘制冲积地块。到目前为止一切顺利,直到我想尝试清理情节。

正如您在图中看到的,从左到右,第一个层/列是 ID 列,然后是一列标签:疾病风险。我想要实现的是在输出图中,而不是让患者 ID 曲折,我希望它们按疾病风险列排序,以便所有高风险 ID 都在顶部,然后是低风险,然后不是填充的。通过这种方式,更容易查看是否存在任何关系。

我环顾四周寻找arrange() 和order() 函数,它们似乎对我的实际输入数据有用,但是一旦我在ggplot 中传递该数据帧,输出数字仍然是混乱的。

我想将 ID 设置为因子,然后使用 levels=.. 但如果患者 ID 不断增长,这不是很聪明。

有没有更聪明的方法?请赐教。我附上了指向示例数据的链接。

https://drive.google.com/file/d/16Pd8V3MCgEHmZEButVi2UjDiwZWklK-T/view?usp=sharing

我绘制图表的代码:

我的输出图

0 投票
1 回答
175 浏览

r - 显示 ggalluvium 的流量

寻求一些关于使用 ggalluvium 的建议来展示澳大利亚的偏好分布。

背景,在澳大利亚,我们有优先投票权。假设我住在一个有 4 名候选人竞争的地区。根据您的政党/候选人偏好,通过在方框 1-4 上编号来完成投票。第一次计票后得票比例最低的候选人将被淘汰,他们的选票将分配到选民在选票上注明的地方。重复这一过程,直到留下两名候选人,并在他们获得超过 50% 的两党首选票数时选出一名候选人。

我正在寻求使用流程图和 ggalluvium 可视化上述重复分配过程。

但是,我似乎不能完全绘制美学来显示在下一次计票中向候选人提供选票的流程。

这是我到目前为止得到的:

输出图像

希望就如何显示每次后续计票后的选票流向下一阶层的哪个政党提供任何指导。

0 投票
0 回答
205 浏览

r - 如何解决 ggalluvial/ggplot2 中无法识别数据的问题?

我想在 R 中创建一个 sankey/冲积图。我有纵向数据:

我的代码:

但我收到一个错误:

我想我按照手动示例一步一步地做所有事情。5:

在此处输入图像描述

但是我还是看不懂剧情。有任何想法吗?

0 投票
1 回答
383 浏览

r - 根据数值列调整冲积图中的线宽

我创建了下面的冲积图,但没有考虑重量,不知道为什么;所以所有的线都有相同的宽度。我该如何调整它?

在此处输入图像描述

0 投票
1 回答
82 浏览

r - Using ggalluvial in R with the ggflags package

I am trying to reproduce somehow this chart UK plot with the ggalluvial package in R. But I do not know how to put the countries flags. I tried to create an ID variable as an y axis to use it with the ggflags package.

Created on 2021-03-03 by the reprex package (v0.3.0)

0 投票
0 回答
45 浏览

r - ggalluvial中的矩形(地层)顺序没有最小化交叉

根据文档,ggalluvial 应该以最小化流交叉的方式排列矩形。我尝试了很多选项,但我似乎无法弄清楚如何自动最小化交叉,因为我的矩形似乎总是按字母顺序排列,除非我将它们转换为因子。

目前,如果我的阶层是 as.character,我会得到这个:

在此处输入图像描述

我想要这样的东西(使用因子手动近似,仍然存在明显的错误放置):

在此处输入图像描述

资料:这里

例如使用的代码:

0 投票
0 回答
36 浏览

r - 问题重新排序 ggalluvial

数据

问题

我正在尝试制作一个冲积地块,但我在轴的排序和重新排序方面遇到了问题。另外,我希望 y 轴的间距相等——现在它们随着数字的减少而变得越来越小。最重要的是A列按照B列排序,其他列按降序排列。但我也在努力解决每个轴中“框”的标签和间距是相等的,而不是根据值的大小。我尝试过不同的事情,例如,制作因子和因子水平但没有运气..

示例代码

0 投票
1 回答
104 浏览

r - ggalluvial 中的其他颜色透明度类别

我正在尝试重现移动流程图,但并不真正知道如何根据 axis2 类别向填充参数添加额外的颜色透明度。或者这是否是解决这个问题的方法!

任何建议将不胜感激,谢谢!

我想要实现的目标: 移动流程图

我所拥有的: 我的移动流程图示例

我的移动流程图示例的代码: