我正在尝试使用Lavacharts在laravel中使用for循环显示多个图表。我不知道问题是什么,但只显示最后一个图表。但是,最后一个图表已正确显示。
(我的控制器主要在图表中为每个图表生成两行。一个是标准值,另一个是实际值。所有这些值在这些循环之前初始化并且它们正常工作。) 这是控制器:
@for ($i = 0; $i < $no_farms; $i++)
@for ($j = 0; $j < $no_flocks; $j++)
<div id="graph_div"></div>
@linechart($i.'graph'.$j, 'graph_div')
@endfor
@endfor
以下是视图,我正在使用刀片模板:
List<GisPoint> points = lines.stream()
.map(s -> s.split("\\s+"))
.map(array -> Arrays.stream(array)
.map(String::trim)
.filter(s -> !s.isEmpty())
.mapToDouble(Double::parseDouble)
.toArray()
)
.map(array -> new GisPoint(array[0], array[1]))
.collect(Collectors.toList());
答案 0 :(得分:1)
你用id&#39; graph_div&#39;覆盖同一个div。在for
的每次传递中。
因此,您应该为您需要的每个图形更改div的ID(例如,#34; graph_div_ $ i_ $ j&#34;)。
<div id="graph_div_{{$i}}_{{$j}}"></div>
@linechart($i.'graph'.$j, 'graph_div_'.$i.'_'.$j)