1

在 R d3heatmap 包中,有没有办法将 x 轴标签旋转 90 度(垂直于轴)而不是 45?

4

1 回答 1

3

我找不到将旋转值传递给函数的简单选项,但您可以进入 d3heatmap 包的内部并在 javascript 代码中更改旋转。

在 R 中运行“.libPaths()”以查找 R 包及其数据的存储位置。就我而言,我在“/home/nick/R/x86_64-suse-linux-gnu-library/3.1/d3heatmap/”中找到了 d3heatmap 包。

您要查找的文件类似于“/home/nick/R/x86_64-suse-linux-gnu-library/3.1/d3heatmap/htmlwidgets/lib/d3heatmapcore/heatmapcore.js”

使用文本编辑器打开文件。有两个地方有设置:“rotate(45),translate(6, 0)”。

因此,搜索“rotate(45)”并将两个地方的“45”替换为“90”​​。您还必须将“translate(6, 0)”更改为可以更好地放置文本的内容。我发现使用“mtcars”数据集作为测试,“translate(12, -20)”(将文本向下移动 12 像素和向右移动 20 像素)效果很好。

带有垂直行标签的 d3heatmap

当使用具有更多或更少行的数据集时,您必须使用正确的翻译,将其从 -20 稍微更改一下,以便正确对齐。可能有一种方法可以自动执行此操作,但我大多只知道 R,而不是 javascript,所以我不知道该怎么做。

于 2015-12-02T23:24:53.890 回答