JqPlot:为图表区域设置固定高度值,不包括y轴标签。

8
我正在使用JqPlot。
图表的高度取决于主容器的高度或默认的JqPlot值。
我的问题是,如果y标签非常长,则图表大小会缩小以适应主容器。
是否可以设置一个固定值的图表高度,而不取决于标签文本长度?
我的需求:我希望始终显示相同的图表高度(例如400像素),而不取决于y标签文本长度。
这里是一个图片来描述我的问题:

你想要做什么:扩大图形高度还是缩短标签。如果我理解正确的话,这似乎是唯一的两个选择。 - Terry
我想始终显示相同的图形高度(例如400像素),而不取决于y标签文本的长度。 - sdespont
1个回答

11

我能想到的唯一方法是参考这个示例,在绘制图形后调用下面的代码获取当前图表的尺寸,并通过添加周围

(即标题和轴)所占用的空间进行相应的调整。
结果就是,您在CSS中设置的图表大小将被应用到图表的图形部分中,就像您期望的那样。

var w = parseInt($(".jqplot-yaxis").width(), 10) + parseInt($("#chart").width(), 10);
var h = parseInt($(".jqplot-title").height(), 10) + parseInt($(".jqplot-xaxis").height(), 10) + parseInt($("#chart").height(), 10);
$("#chart").width(w).height(h);
plot.replot();

2
如果您不保存“plot”变量,也可以执行以下操作:$("#chart").data("jqplot").replot(); - Will Shaver

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接