一行中的多个 dygraphs
Multiple dygraphs in one row
所以我对整个 Dygraph 业务都很陌生,并且很难找到解决方案。我试图在背景 canvas 上并排放置两个 dygraphs,但它不起作用。
我尝试在右侧的图表 div 上使用 display-inline 属性,在左侧的图表 div 上使用 float:left 和许多其他 div 排列结构,但是 none 当我在它们上绘制 Dygraphs 时,它们似乎起作用了。 Float:left 是唯一一个设法将它们都放在 Canvas 上但使左侧 Dygraph 无法交互的人(我认为这是它不可动画的缺点)。
HTML:
<div id="container" >
<canvas class="canvas" id="cnv" width="140" height="60px" style="border:1px solid #999999;"></canvas>
<div style="width:120px; height:65px; ">
<div id="graphdiv2" style="width:60px; height:65px;"></div>
<div id="graphdiv3" style="width:60px; height:65px;"></div>
</div>
</div>
JS:
g = new Dygraph(document.getElementById("graphdiv2"),
// For possible data formats, see http://dygraphs.com/data.html
// The x-values could also be dates, e.g. "2012/03/15"
"X,Y,Z\n" +
"1,0,3\n" +
"2,2,6\n" +
"3,4,8\n" +
"4,6,9\n" +
"5,8,9\n" +
"6,10,8\n" +
"7,12,6\n" +
"8,14,3\n",
{
// options go here. See http://dygraphs.com/options.html
legend: 'always',
animatedZooms: true,
title: 'dygraphs chart template'
});
g2 = new Dygraph(document.getElementById("graphdiv3"),
// For possible data formats, see http://dygraphs.com/data.html
// The x-values could also be dates, e.g. "2012/03/15"
"X,Y,Z\n" +
"1,0,3\n" +
"2,2,6\n" +
"3,4,8\n" +
"4,6,9\n" +
"5,8,9\n" +
"6,10,8\n" +
"7,12,6\n" +
"8,14,3\n",
{
// options go here. See http://dygraphs.com/options.html
legend: 'always',
animatedZooms: true,
title: 'dygraphs chart template'
});
Fiddle 这里:http://jsfiddle.net/eM2Mg/
好的,终于找到满意的解决方案了。为了我将来的参考,它是使用
display: inline-block;
在我绘制的两个 div 上。
为了正确使用,它们必须将 width 参数设置为某个值(至少对我来说,在那之前它不起作用)。
这是我现在的 div 代码:
<div id="graphdiv3" style="width: 200px; height: 100px; display: inline-block;"></div>
希望这对遇到同样问题的人有所帮助。 :)
所以我对整个 Dygraph 业务都很陌生,并且很难找到解决方案。我试图在背景 canvas 上并排放置两个 dygraphs,但它不起作用。 我尝试在右侧的图表 div 上使用 display-inline 属性,在左侧的图表 div 上使用 float:left 和许多其他 div 排列结构,但是 none 当我在它们上绘制 Dygraphs 时,它们似乎起作用了。 Float:left 是唯一一个设法将它们都放在 Canvas 上但使左侧 Dygraph 无法交互的人(我认为这是它不可动画的缺点)。
HTML:
<div id="container" >
<canvas class="canvas" id="cnv" width="140" height="60px" style="border:1px solid #999999;"></canvas>
<div style="width:120px; height:65px; ">
<div id="graphdiv2" style="width:60px; height:65px;"></div>
<div id="graphdiv3" style="width:60px; height:65px;"></div>
</div>
</div>
JS:
g = new Dygraph(document.getElementById("graphdiv2"),
// For possible data formats, see http://dygraphs.com/data.html
// The x-values could also be dates, e.g. "2012/03/15"
"X,Y,Z\n" +
"1,0,3\n" +
"2,2,6\n" +
"3,4,8\n" +
"4,6,9\n" +
"5,8,9\n" +
"6,10,8\n" +
"7,12,6\n" +
"8,14,3\n",
{
// options go here. See http://dygraphs.com/options.html
legend: 'always',
animatedZooms: true,
title: 'dygraphs chart template'
});
g2 = new Dygraph(document.getElementById("graphdiv3"),
// For possible data formats, see http://dygraphs.com/data.html
// The x-values could also be dates, e.g. "2012/03/15"
"X,Y,Z\n" +
"1,0,3\n" +
"2,2,6\n" +
"3,4,8\n" +
"4,6,9\n" +
"5,8,9\n" +
"6,10,8\n" +
"7,12,6\n" +
"8,14,3\n",
{
// options go here. See http://dygraphs.com/options.html
legend: 'always',
animatedZooms: true,
title: 'dygraphs chart template'
});
Fiddle 这里:http://jsfiddle.net/eM2Mg/
好的,终于找到满意的解决方案了。为了我将来的参考,它是使用
display: inline-block;
在我绘制的两个 div 上。
为了正确使用,它们必须将 width 参数设置为某个值(至少对我来说,在那之前它不起作用)。
这是我现在的 div 代码:
<div id="graphdiv3" style="width: 200px; height: 100px; display: inline-block;"></div>
希望这对遇到同样问题的人有所帮助。 :)