首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用d3.js绘制5路图

用d3.js绘制5路图
EN

Stack Overflow用户
提问于 2015-03-05 10:24:27
回答 1查看 525关注 0票数 0

我正在使用venn.js尝试可视化5路数据.我使用的数据来自R的VennDiagram包。但不知何故它没能出现。大多数例子都是使用偶数的集合,奇数有什么特别之处吗?

我的代码如下:

代码语言:javascript
复制
 <!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>mds venn.js example</title>
<style>
body {
    font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 14px;
}
</style>
</head>

<body>
    <div id="venn"></div>
</body>

<script src="http://www.numericjs.com/lib/numeric-1.2.6.min.js"></script>
<script src="http://d3js.org/d3.v3.min.js"></script>
<script src="venn.js"></script>
<script src="http://www.benfrederickson.com/images/mds.js"></script>
<script>
var sets = [{sets: ['A'], size: 301},
            {sets: ['B'], size: 321},
            {sets: ['C'], size: 311},
            {sets: ['D'], size: 321},
            {sets: ['E'], size: 301}
            {sets: ['A','B'], size: 188},
            {sets: ['A','C'], size: 191},
            {sets: ['A','D'], size: 184},
            {sets: ['A','E'], size: 177},
            {sets: ['B','C'], size: 194},
            {sets: ['B','D'], size: 197},
            {sets: ['B','E'], size: 190},
            {sets: ['C','D'], size: 190},
            {sets: ['C','E'], size: 173},
            {sets: ['D','E'], size: 186}];
var chart = venn.VennDiagram()
                 .width(600)
                 .height(400)
                 .layoutFunction(
                    function(d) { return venn.venn(d, { initialLayout: venn.classicMDSLayout });}
                );
d3.select("#venn").datum(sets).call(chart);
</script>
</html>

原始数据来自

代码语言:javascript
复制
venn.plot <- draw.quintuple.venn(
area1 = 301,
area2 = 321,
area3 = 311,
area4 = 321,
area5 = 301,
n12 = 188,
n13 = 191,
n14 = 184,
n15 = 177,
n23 = 194,
n24 = 197,
n25 = 190,
n34 = 190,
n35 = 173,
n45 = 186,
n123 = 112,
n124 = 108,
n125 = 108,
n134 = 111,
n135 = 104,
n145 = 104,
n234 = 111,
n235 = 107,
n245 = 110,
n345 = 100,
n1234 = 61,
n1235 = 60,
n1245 = 59,
n1345 = 58,
n2345 = 57,
n12345 = 31,
category = c("A", "B", "C", "D", "E"),
fill = c("dodgerblue", "goldenrod1", "darkorange1", "seagreen3", "orchid3"),
cat.col = c("dodgerblue", "goldenrod1", "darkorange1", "seagreen3", "orchid3"),
cat.cex = 2,
margin = 0.05,
cex = c(1.5, 1.5, 1.5, 1.5, 1.5, 1, 0.8, 1, 0.8, 1, 0.8, 1, 0.8, 1, 0.8, 
1, 0.55, 1, 0.55, 1, 0.55, 1, 0.55, 1, 0.55, 1, 1, 1, 1, 1, 1.5),
ind = TRUE
);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-05 17:08:55

您的javascript中有语法错误,这一行“{set:'E',size: 301}”后面应该有一个逗号--添加逗号,它产生的输出如下:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28875479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档