这是问题Flot: Zoom to Far Right by Default的扩展。 虽然接受的答案适用于较小的人口,但是如果我们有超过1000个点,x轴将会丢失,除了y轴之外什么都不显示(如果我们设置左:0 <再次工作/ strong>),但是它会被放大到最左边。
i.e
$.plot($('#graph_with_zoom'), [data], plot_options).zoom({
'amount': total_ticks / 5,
'center': { left: 0, top: 0 }
});
有没有人有同样的问题?如果是的话,有人有解决方案吗?
答案 0 :(得分:2)
您的评论正确,left
属性以像素为单位,但示例中的图表本身不是400像素宽。它只有大约336像素宽,其余是y轴和左右自由空间。
您可以使用pl.width()
获取图表本身的宽度,但不幸的是,这只会给您一个整数(在您的示例中为336),而left
属性的最佳值似乎为~336.333。
经过一些尝试和错误后,我发现这个公式似乎适用于不同的画布宽度和不同的点数:
pl.zoom({
'amount': nZoom,
'center': { left: pl.width() * (1 + 1 / total_ticks), top: 0 }
});
请参阅此更新fiddle。