【发布时间】:2012-03-13 13:59:31
【问题描述】:
我正在使用 Flot 创建图表。 这是我的代码jsFiddle code
function drawSeriesHook(plot, canvascontext, series) {
var ctx = canvascontext,
plotOffset = plot.offset(),
labelText = 'VALUE', // customise this text, maybe to series.label
points = series.datapoints.points,
ps = series.datapoints.pointsize,
xaxis = series.xaxis,
yaxis = series.yaxis,
textWidth, textHeight, textX, textY;
// only draw label for top yellow series
if (series.color === '#F8C095') {
ctx.save();
ctx.translate(plotOffset.left, plotOffset.top);
ctx.lineWidth = series.bars.lineWidth;
ctx.fillStyle = '#000'; // customise the colour here
for (var i = 0; i < points.length; i += ps) {
if (points[i] == null) continue;
textWidth = ctx.measureText(labelText).width; // measure how wide the label will be
textHeight = parseInt(ctx.font); // extract the font size from the context.font string
textX = xaxis.p2c(points[i] + series.bars.barWidth / 2) - textWidth / 2;
textY = yaxis.p2c(points[i + 1]) - textHeight / 2;
ctx.fillText(labelText, textX, textY); // draw the label
}
ctx.restore();
}
}
- 在我的 drawseriesHook 函数中,我需要获取 x 轴标签,例如 Data1、Data2、Data3、Data4
- 有没有办法在不使用 series.label & series.color 的情况下唯一标识最后一个数据项。目前我已经通过修改函数中的 series.color 来标识它
【问题讨论】:
标签: javascript jquery-mobile cordova flot bar-chart