我想在网页上显示我在R中生成的热图(矩阵)。 我看起来像这样的矩阵,但在我的情况下,大小是300x300。
基本上我正在寻找一个交互式集群,它看起来像这样:
http://online.wsj.com/article/SB125993225142676615.html#articleTabs%3Dinteractive
http://mbostock.github.com/protovis/ex/matrix.html
我希望能够在分支上进行clic,然后突出显示所选的组/文本,并淡出矩阵的其余部分。
我环顾四周,找不到多少。我甚至不知道我应该用什么语言? JSON,Flash,HTML5,javascript,谷歌排行榜?
这里有任何意见和建议。
感谢。
答案 0 :(得分:4)
我认为InCHlib - 交互式群集热图库可能是解决方案。
获取答案 1 :(得分:1)
Google Visualization提供此热图选项: http://informatics.systemsbiology.net/visualizations/heatmap/bioheatmap.html
这个项目也适用于更高级的用途,实际上包括鼠标悬停和工具提示,以及线放大: http://code.google.com/p/visquick/
您可能还想看一下jQuery Flot,但要注意WSJ使用一个名为Tableau的超级昂贵的公司进行数据可视化,您不太可能在开源中找到这种级别的可视化视频或免费使用封装
答案 2 :(得分:1)
不幸的是,我有同样的要求。为层次聚类结果创建Clustergram(热图+树形图)。
没有直接解决方案。我使用ProtovisGWT(Choosel)来创建树状图和热图seperatley,然后将它们组合起来。
如果你只是想要js库,你可以使用protovis或d3.js来实现这一点。
答案 3 :(得分:0)
我建议使用JavaScript执行此任务。将热图保存为R
中的SVGsvg("mymap.svg")
heatmap(...)
dev.off()
然后将其作为对象
嵌入到HTML文档中 <object id="test-svg" width="800" height="600"
type="image/svg+xml" data="test.svg"></object>
现在,您可以使用JavaScript或ECMAScript进行各种操作。我建议您阅读有关此主题的各种在线教程之一。例如,你可以开始使用这个:http://www.petercollingridge.co.uk/data-visualisation/using-javascript-control-svg
答案 4 :(得分:0)
D3.js的树形图很好地解决了这个问题。见这里
答案 5 :(得分:0)
您可以尝试http://amp.pharm.mssm.edu/clustergrammer/。它不是用R编写的,但您可以通过以制表符分隔格式上传矩阵文件来制作交互式集群图,并且您将返回交互式(可重新排序,可搜索,可过滤等)和可共享的基于Web的可视化
答案 6 :(得分:0)
D3heatmap根据 foreach (MyClass possibleDate in comboBox1.Items)
{
int stringLength = comboBox1.GetItemText(possibleDate).Length;
if (stringLength > longestName.Length)
longestName = comboBox1.GetItemText(possibleDate);
}
和ComboBox
接口在R中提供带有树形图的交互式热图。它包括单行和列选择,但does not currently allow选择树形图分支。