Flot本身不支持轴标签,但是您可以使用html和css相当容易地添加它们,并且稍微修改一下flot选项。
flot网站上的演示有一个y轴标签。 它是通过将带有某些类的div附加到flot容器来创建的:
var xaxisLabel = $("<div class='axisLabel xaxisLabel'></div>")
.text("My X Label")
.appendTo($('#placeholder_1w'));
var yaxisLabel = $("<div class='axisLabel yaxisLabel'></div>")
.text("Response Time (ms)")
.appendTo($('#placeholder_1w'));
接下来,您需要这样的CSS:
.axisLabel {
position: absolute;
text-align: center;
font-size: 12px;
}
.xaxisLabel {
bottom: 3px;
left: 0;
right: 0;
}
.yaxisLabel {
top: 50%;
left: 2px;
transform: rotate(-90deg);
-o-transform: rotate(-90deg);
-ms-transform: rotate(-90deg);
-moz-transform: rotate(-90deg);
-webkit-transform: rotate(-90deg);
transform-origin: 0 0;
-o-transform-origin: 0 0;
-ms-transform-origin: 0 0;
-moz-transform-origin: 0 0;
-webkit-transform-origin: 0 0;
}
如果您需要支持IE6/7,不幸的是,有更多的技巧需要处理-您需要通过执行以下操作将body标签标记为“ie6”或“ie7”的类:
<body>
接下来是额外的CSS代码:
.ie7 .yaxisLabel, .ie8 .yaxisLabel {
top: 40%;
font-size: 36px;
filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.0, M12=0.33, M21=-0.33, M22=0.0,sizingMethod='auto expand');
}
最后,在我尝试这样做时,我发现需要为y轴指定一个固定的labelWidth和为x轴指定一个固定的labelHeight。
在此处查看一个可工作的示例:http://jsfiddle.net/ryleyb/U82Dc/