Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Twitter引导时D3打印颜色方案问题_Javascript_Css_Twitter Bootstrap_D3.js - Fatal编程技术网

Javascript 使用Twitter引导时D3打印颜色方案问题

Javascript 使用Twitter引导时D3打印颜色方案问题,javascript,css,twitter-bootstrap,d3.js,Javascript,Css,Twitter Bootstrap,D3.js,我很难让一些D3绘图使用我指定的配色方案。我正在使用flask、Twitter引导和D3 具体来说,我正试图使用CSV文件中的数据制作一个piechart(见下面的代码)。即使我为图表指定了自己的颜色(请参见代码部分:“.range”(“.FF4A29”、“.8a89a6”、“.7b6888”、“.6b486b”、“.a05d56”、“.d0743c”、“.ff8c00”)),生成的图表也有奇怪的紫色和绿色(见下文)。这些相同的紫色和绿色出现在我在页面上绘制的其他D3图中 当我在非引导页面上使用

我很难让一些D3绘图使用我指定的配色方案。我正在使用flask、Twitter引导和D3

具体来说,我正试图使用CSV文件中的数据制作一个piechart(见下面的代码)。即使我为图表指定了自己的颜色(请参见代码部分:“.range”(“.FF4A29”、“.8a89a6”、“.7b6888”、“.6b486b”、“.a05d56”、“.d0743c”、“.ff8c00”)),生成的图表也有奇怪的紫色和绿色(见下文)。这些相同的紫色和绿色出现在我在页面上绘制的其他D3图中

当我在非引导页面上使用此javascript代码时,它看起来是正确的!我猜引导CSS中的某些内容正在覆盖javascript代码?是否存在强制使用指定颜色的方法

<style>

.arc text {
  font: 12px sans-serif;
  text-anchor: middle;
}

.arc path {
  stroke: #fff;
}

</style>
<script src="//d3js.org/d3.v3.min.js"></script>
<script>

var width = 500,
    height = 500,
    radius = Math.min(width, height) / 3;

var color = d3.scale.ordinal()
    .range(["#FF4A29", "#8a89a6", "#7b6888", "#6b486b", "#a05d56", "#d0743c", "#ff8c00"]);

var arc = d3.svg.arc()
    .outerRadius(radius - 10)
    .innerRadius(0);

var labelArc = d3.svg.arc()
    .outerRadius(radius + 60)
    .innerRadius(radius - 40);

var pie = d3.layout.pie()
    .sort(null)
    .value(function(d) { return d.mentions; });

var svg2 = d3.select("#competitors").append("svg")
    .attr("width", width)
    .attr("height", height)
  .append("g")
    .attr("transform", "translate(" + width / 2.3 + "," + height / 2.3 + ")");

d3.csv("static/competitor_mentions.csv", type, function(error, data) {
  if (error) throw error;

  var g = svg2.selectAll(".arc")
      .data(pie(data))
    .enter().append("g")
      .attr("class", "arc");

  g.append("path")
      .attr("d", arc)
      .style("fill", function(d) { return color(d.data.company); });

  g.append("text")
      .attr("transform", function(d) { return "translate(" + labelArc.centroid(d) + ")"; })
      .attr("dy", ".35em")
      .text(function(d) { return d.data.company; });
});

function type(d) {
  d.mentions = +d.mentions;
  return d;
}

</script>

.arc文本{
字体:12px无衬线;
文本锚定:中间;
}
.弧形路径{
冲程:#fff;
}
可变宽度=500,
高度=500,
半径=数学最小值(宽度、高度)/3;
var color=d3.scale.ordinal()
.范围([“FF4A29”、“8a89a6”、“7b6888”、“6b486b”、“a05d56”、“d0743c”、“ff8c00”);
var arc=d3.svg.arc()
.外层(半径-10)
.内半径(0);
var labelArc=d3.svg.arc()
.外部(半径+60)
.内半径(半径-40);
var pie=d3.layout.pie()
.sort(空)
.value(函数(d){return d.atterences;});
var svg2=d3.选择(#竞争对手”).追加(“svg”)
.attr(“宽度”,宽度)
.attr(“高度”,高度)
.附加(“g”)
.attr(“变换”、“平移”(“+width/2.3+”,“+height/2.3+”));
d3.csv(“静态/竞争对手_提及.csv”)、类型、功能(错误、数据){
如果(错误)抛出错误;
变量g=svg2。选择全部(“.arc”)
.数据(pie(数据))
.enter().append(“g”)
.attr(“类”、“弧”);
g、 附加(“路径”)
.attr(“d”,弧)
.style(“fill”,函数(d){返回颜色(d.data.company);});
g、 附加(“文本”)
.attr(“transform”,函数(d){return”translate(“+labelArc.centroid(d)+”);})
.attr(“dy”,“.35em”)
.text(函数(d){返回d.data.company;});
});
功能类型(d){
d、 提及次数=+d.提及次数;
返回d;
}

请查看d3.js的示例代码,其中包含bootstrap。我没有发现任何bootstrap覆盖颜色的问题。请在任何代码编辑器中共享您的代码,以便更好地分析问题。感谢您Hi Jyoti,感谢您创建该页面。我担心bootstrap很难使用它,但我尝试了复制bootstrap CSS。它似乎不起作用。你怎么看?请在任何代码编辑器中共享你的代码(如codepen、JSFIDLE等)。我将尝试找出你的代码中的错误。我非常困惑,因为它在这个JSFIDLE()中起作用,但它在我的机器上不起作用…调试你的代码,我相信你会通过比较工作副本和非工作副本来发现错误。请检查d3.js的示例代码,包括bootstrap。我没有发现bootstrap覆盖颜色的任何问题。请在任何代码编辑器中共享你的代码,以便更好地分析问题。谢谢你i、 感谢您创建该页面。我担心很难让bootstrap使用它,但我尝试复制bootstrap CSS。它似乎不起作用。您认为如何?请在任何代码编辑器(如codepen、JSFIDLE等)中共享您的代码。我将尝试找出您的代码中的错误。我非常困惑,因为它在这个JSFIDLE()中工作,但在我的机器上不工作……调试您的代码,我相信您会通过比较工作副本和非工作副本来找到错误。