在R d3heatmap包中,是否有方法将x轴标签旋转到90度(垂直于轴)而不是45度?
我找不到一个简单的选项来将旋转值传递给函数,但您可以进入d3heatmap包的内部,在javascript代码中更改旋转。
在R中运行".libPaths()"以查找R包及其数据的存储位置。在我的案例中,我在"/home/nick/R/x86_64-sus-linux-gnu-library/3.1/d3heatmap/"中找到了d3heatmap包。
您要查找的文件类似于"/home/nick/R/x86_64-suse-linux gnu-library/3.1/d3heatmap/htmlwidgets/lib/d3heatmapcore/heatmapcore.js"
使用文本编辑器打开文件。有两个地方有一个设置:"旋转(45),平移(6,0)"。
因此,搜索"rotate(45)"并在两个位置将"45"替换为"90"。您还必须将"translate(6,0)"更改为能更好地放置文本的内容。我发现,使用"mtcars"数据集作为测试,"translate(12,-20)"(将文本向下移动12个像素,向右移动20个像素)效果良好。
d3具有垂直行标签的热图
当使用具有或多或少行的数据集时,您必须考虑正确的翻译,将其从-20更改一点,以便正确对齐。可能有一种方法可以自动做到这一点,但我大多只知道R,而不知道javascript,所以我不知道如何做到。