D3.js nvd3从代码中添加nvd3图表dom元素

D3.js nvd3从代码中添加nvd3图表dom元素,d3.js,nvd3.js,D3.js,Nvd3.js,我正在使用以下代码: 在此代码中,html包含 我正在尝试从代码中添加它: $scope.buildNewChart = function(){ var xmlString = "<nvd3 options='options' data='data' class='ng-isolate-scope'></nvd3>"; var wrapper= document.createElement('div');

我正在使用以下代码:

在此代码中,html包含

我正在尝试从代码中添加它:

 $scope.buildNewChart = function(){
          var xmlString = "<nvd3 options='options' data='data' class='ng-isolate-scope'></nvd3>";

          var wrapper= document.createElement('div');
          wrapper.innerHTML= xmlString;
          var div= wrapper.firstChild;

          var elem = document.getElementById("charts");
          elem.appendChild(div);
        }
$scope.buildNewChart=函数(){
var xmlString=“”;
var wrapper=document.createElement('div');
wrapper.innerHTML=xmlString;
var div=wrapper.firstChild;
var elem=document.getElementById(“图表”);
附属儿童元素(分部);
}

但它的工作方式与我看到的元素(
)不同,但它是空的

要添加带有角度的元素,应该使用
$compile

$scope.buildNewChart = function(){
    var chart = angular.element("<nvd3 options='options' data='data' class=''></nvd3>");

    var elem = angular.element(document.getElementById("charts"));
    elem.append(chart);
    $compile(chart)($scope)
}
$scope.buildNewChart=函数(){
var图表=角度元素(“”);
var elem=angular.element(document.getElementById(“charts”);
要素附加(图表);
$compile(图表)($scope)
}

另一方面,它也违反了角度练习。考虑将其添加到初始HTML中,但是如果使用<代码> NG,如果< < /C> >或某物

,我需要添加一些图表,并且我得到$编译不是在控制器中猜测您的<代码> BuffdNeCuths< /Cult>方法,因此在其注入中添加<代码> $FULLY <代码>。