Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.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 如何在循环中使用highcharts制作多个图表?_Javascript_Php_Html_Highmaps - Fatal编程技术网

Javascript 如何在循环中使用highcharts制作多个图表?

Javascript 如何在循环中使用highcharts制作多个图表?,javascript,php,html,highmaps,Javascript,Php,Html,Highmaps,这是我的相关代码: <script> titles = <?php echo json_encode($graphTitles)?>; //Loop through the graphs for (var graphNO = 0; graphNO < titles.length; graphNO++) {

这是我的相关代码:

        <script>
            titles = <?php echo json_encode($graphTitles)?>;
            //Loop through the graphs
            for (var graphNO = 0; graphNO < titles.length; graphNO++)
            {                               
               //CREATE NEW CONTAINER
                var container = document.createElement('div'); 
                document.body.appendChild(container);er);

                dates = <?php echo json_encode($recivedDates);?>[titles[graphNO]];
                //I EXTRACT A FEW  MORE ARRAYS THE SAME METHOD
              $(function () 
                {
                  $(container).highcharts({
                      title: {
                          text: titles[graphNO]
                      },
                      xAxis: {
                          categories: dates
                      },
                      series: [{
                          type: 'column',
                          color: 'gold',
                          name: 'Created Issues',
                          data: createdIssues.map(Number)
                      }, 
                       //MORE COLUMN'S AND SOME SPLINES. IT ALL WORKS AS EXPECTED
                  });
                });
            }
        </script>

头衔=;
//循环浏览图表
for(var graphNO=0;graphNO
我不想发布所有代码,只想把它弄得一团糟,我希望这段代码能做到:

graphNO的值为2,我认为它将循环两次(它会这样做),为每个循环创建一个容器(它会这样做),然后在它刚刚创建的容器中为每个循环绘制一个不同的图(但它只绘制第二个图)

我不知道出了什么问题,但是关于如何解决这个问题的任何想法,或者关于如何在一个循环中生成多个图的任何想法都会非常有帮助


此外,这是我创建的第一个网站,因此我已经一天多没有使用javascript、php或html了,如果这是真的很明显,那么很抱歉,我在这上面找不到任何东西。

我得到了它,在尝试了一天网络上不起作用的复杂内容后,我最终想如果我这么做而不是这样删除该函数,会发生什么:

             $(function () 
            {
              $(container).highcharts({
                  title: {
我只是:

              $(container).highcharts({
                  title: {

我不知道为什么,可能是因为jquery是如何处理函数的,我不知道,直到一个小时前我甚至不知道我用的是jquery。但是如果有人想做类似的事情,它是有效的,并且可以告诉我为什么。

我在世界各地尝试了一天复杂的东西后得到了它如果web不起作用,我最后想,如果我删除该功能,那么会发生什么,而不是:

             $(function () 
            {
              $(container).highcharts({
                  title: {
我只是:

              $(container).highcharts({
                  title: {

我不知道为什么,可能是因为jquery是如何处理函数的,我不知道,直到一个小时前我还不知道我使用的是jquery。但是如果有人想做类似的事情,它是有效的,请告诉我原因。

Swikrit Khanal的答案是有效的,因为函数当你把它全部包装在函数中时,该函数将在构建下一个图形时覆盖它的自身,因此你只剩下最后一个图形

Bellow是一种在不删除函数的情况下使用循环并构建多个图形的方法,而是对其进行唯一命名

for(v=0; v < 5; v++){
 var container = "#container"+v;
 var func_name = "container"+v;
 func_name = function () {
   $(container).highcharts({
   })
 }
func_name()
}
(v=0;v<5;v++)的
{
var container=“#container”+v;
var func_name=“容器”+v;
func_name=函数(){
$(容器).highcharts({
})
}
func_name()
}

Swikrit Khanal的答案确实有效,因为该函数不再被重写。当您将其全部包装在函数中时,该函数将在构建下一个图形时覆盖其自身,因此您将只剩下最后一个图形

Bellow是一种在不删除函数的情况下使用循环并构建多个图形的方法,而是对其进行唯一命名

for(v=0; v < 5; v++){
 var container = "#container"+v;
 var func_name = "container"+v;
 func_name = function () {
   $(container).highcharts({
   })
 }
func_name()
}
(v=0;v<5;v++)的
{
var container=“#container”+v;
var func_name=“容器”+v;
func_name=函数(){
$(容器).highcharts({
})
}
func_name()
}

我遵循了这一点,我可以循环,但它只能打印最后一张图表,所以有没有打印所有图表的想法?嘿,Shi,你的问题是“函数名”正在覆盖自身。这是一个以highcharts JSFIDLE为基础的多个图的示例。我遵循了这一点,我可以循环,但它只能打印最后一张图表,有没有想法把所有的图表都打印出来?嘿,Shi,你的问题是“func_name”正在覆盖自己。下面是一个以highcharts JSFIDLE为基础的多个图表的示例。