jqPlot-如何使垂直条在放大时变宽

jqPlot-如何使垂直条在放大时变宽,jqplot,Jqplot,在我的HTML页面中,我使用jqPlot创建了两个垂直条形图 它们与以下示例类似,只是mine使用了条而不是线: 在上面的示例中,底部图表用于控制顶部图表。我的也是这样 通常,我的两个图表都包含200多个x轴条目,它们被传递到相同的数据集,每个条的宽度设置为6px 问题是,当我放大时,条形图保持较薄,即6px。我想实现的是,当我放大时,使条形图变宽。我尝试将barWidth设置为null,如下所示: // BarRenderer. rendererOptions : { ...

在我的HTML页面中,我使用jqPlot创建了两个垂直条形图

它们与以下示例类似,只是mine使用了条而不是线:

在上面的示例中,底部图表用于控制顶部图表。我的也是这样

通常,我的两个图表都包含200多个x轴条目,它们被传递到相同的数据集,每个条的宽度设置为6px

问题是,当我放大时,条形图保持较薄,即6px。我想实现的是,当我放大时,使条形图变宽。我尝试将barWidth设置为null,如下所示:

// BarRenderer.
rendererOptions : {
    ...
    barWidth: null, // width of the bars.  null to calculate automatically.
    ...
}
然而,这似乎没有做到它所说的


有人能很好地解决这个问题吗?

我必须说我没有解决这个问题的办法。但如果您将constraintZoomTo设置为“y”,则可能会有一些帮助,用户可以通过这种方式看到正在发生的事情,即,他将仅缩放绘图的y部分


另一个解决方案是自己编写这种行为。但老实说,我不知道从哪里开始。即使条形图可以进行缩放,条形图的宽度将是相同的,无论您缩放得有多深,尤其是对于折线图,缩放意味着完全

作为临时解决方法,您可以尝试中建议的修改。被拒绝,因为应该有一种更优化的方法来实现这一点。

您是否尝试自己直接设置宽度?如果设置为null不起作用,那么我假设您可以根据缩放级别对其进行相应的缩放,首先假设一些起始宽度,例如6,就像您的情况一样。@Boro我的两个绘图都设置为900px宽。如果我能找到当用户执行缩放时,在顶部绘图中将渲染多少条,那么我应该能够根据画布大小计算每个条的宽度。所以我认为这样做是可行的:捕捉缩放事件→ 找到要绘制的条数→ 计算每根钢筋的宽度→ 更新jqPlot选项以使用此新条宽度→ 雷波特。我会做更多的调查,你的想法是对的。这就是路。我只是担心您将无法避免更改脚本本身的麻烦,因为我昨天找不到任何缩放事件。我认为一切都只是画画,正如我们已经讨论过的,如果你添加了你的方法,例如在这个drawZoomBox方法的开头和结尾,你应该很好。如果您能找到满意的解决方案,请与我们分享。我认为变焦事件和其他是JQPrice应该考虑在将来添加的重要事情。是的,这是真的。然而,在我的例子中,我用canvasOverlay在垂直条上画了水平线,如果每个条都宽一点,例如15px,那么就更容易看到线和条相交的地方。现在很难看到。谢谢布鲁诺。我已经尝试了这两种修改,但不幸的是,它们使我的垂直条太宽,即使不进行缩放。