Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.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 D3图表Y轴线在某些分辨率下不可见_Javascript_D3.js_Charts - Fatal编程技术网

Javascript D3图表Y轴线在某些分辨率下不可见

Javascript D3图表Y轴线在某些分辨率下不可见,javascript,d3.js,charts,Javascript,D3.js,Charts,我有一个堆叠的条形图,图形绘制正确,但问题是y轴线不可见。但是,如果在示例图表中增加浏览器页面的大小,可以看到在某些分辨率下会出现x、y轴线和水平刻度线。所以x、y轴线和水平刻度线的出现和消失取决于页面的分辨率。如何解决这个问题 我定义x和y轴,如下所示 var yAxis = d3.svg.axis() .scale(y) .orient("left") .ticks(5) .tickSize(-width - 180, 0, 0) .tickFormat(d3.format

我有一个堆叠的条形图,图形绘制正确,但问题是y轴线不可见。但是,如果在示例图表中增加浏览器页面的大小,可以看到在某些分辨率下会出现x、y轴线和水平刻度线。所以x、y轴线和水平刻度线的出现和消失取决于页面的分辨率。如何解决这个问题

我定义x和y轴,如下所示

var yAxis = d3.svg.axis()
  .scale(y)
  .orient("left")
  .ticks(5)
 .tickSize(-width - 180, 0, 0)
  .tickFormat(d3.format("$"));

var xAxis = d3.svg.axis()
  .scale(x)
  .orient("bottom")
  .tickFormat(d3.time.format("%b"));

svg.append("g")
  .attr("class", "y axis")
  .attr("transform", "translate(0,0)")
  .call(yAxis);

svg.selectAll('.axis line, .axis path')
.style({ 'stroke': '#ddd', 'fill': 'none', 'stroke-width': '1px' });


svg.append("g")
  .attr("class", "x axis")
  .attr("transform", "translate(0," + height + ")")
  .call(xAxis);

查看它的实际操作可能会有所帮助,但可能是在svg的末尾绘制轴。您可以尝试添加样式溢出:svg元素可见,以确保有足够的空间显示轴。如果这是问题所在,您需要将轴放置在远离边缘的位置。

查看它的实际操作可能会有所帮助,但可能是在svg的末尾绘制轴。您可以尝试添加样式溢出:svg元素可见,以确保有足够的空间显示轴。如果这是问题所在,则需要将轴远离边缘。

设置后,问题已解决

shape-rendering: geometricPrecision;
代替

shape-rendering: crispEdges;

我希望这对以后的人有帮助。

设置后问题就解决了

shape-rendering: geometricPrecision;
代替

shape-rendering: crispEdges;
我希望这对将来有帮助