【问题标题】:canvas chart height AngularJS画布图表高度AngularJS
【发布时间】:2016-10-31 21:02:20
【问题描述】:

我想在 AngularJS 中渲染一个图表

这是我的图表 html 代码的一部分:

<div style="overflow: auto;">
    <div id="parentDivChart" style="{{changeWidth()}}; height:350px;">
        <canvas id="bar"  class="chart chart-bar" chart-data="datta" chart-labels="labels" chart-legend="true">
        </canvas>
    </div>
</div>

这是我的函数 changeWidth() 的控制器:

function changeWidth(trendValues)
{
    elem = document.getElementById('parentDivChart');
    elem.style.width = $scope.Values.length*20 +"px";
}

我的想法是我希望能够根据收到的数据动态更改宽度。一切都很好,但是当我将我的高度固定为 350px 时,我的画布不会继承该值,而是会拉伸我的画布并为其高度设置一个不合适的值。有人可以帮我吗?为什么画布不继承父div的高度,却继承了变化的宽度。如何为画布设置固定高度?

提前致谢!

【问题讨论】:

  • 你的问题不清楚。

标签: javascript angularjs html5-canvas


【解决方案1】:

elem.style.width = $scope.Values.length*20 +"px"; 一起使用elem.setAttribute('width', $scope.Values.length*20);

这是因为画布元素取决于宽度属性而不是宽度style作为绘图区域的宽度。

Reference

【讨论】:

  • 但是当我设置一个固定的高度时,它并没有考虑到这一点。相反,它给它一个随机值,我的图表显示不正确
  • 是的,但是高度不会变成我给它的值
猜你喜欢
  • 2016-11-18
  • 1970-01-01
  • 1970-01-01
  • 2012-07-04
  • 2014-04-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-03
相关资源
最近更新 更多