【问题标题】:Flot Chart's Bar Width浮动图表栏宽度
【发布时间】:2014-10-22 09:07:44
【问题描述】:

我在我的报告页面中使用浮动图表。该图表有 x 轴,其中包含一些标签,如 Quality of ServiceQuality of Performance 等,但这些标签对于其他所有客户都是动态的。我的意思是标签可以是CarPlaneTruck 对于其他客户,x 轴文本之间的字符差异导致条形宽度的突然变化。据我所知,flot 条形图的barWidth 属性取决于x 轴,正如this answer 的作者所说。在时间模式下,我有点理解,但是如果我在 x 轴上使用文本,barWidth 是如何确定的?

编辑: 生成的代码是 here

相同的宽度值,即0.1,图表中的两个不同视图:

x 轴文本较长的那个

x 轴文本较短的那个

它来了,最糟糕的一个:

【问题讨论】:

  • 不同图表的底层数据是什么? (例如最后一个看起来缺少一个条形组。)即使您使用类别模式,条形的位置和宽度也取决于基础数据中的数值。 (如果您可以为图像中的图表提供小提琴或代码 sn-p,我们可以提供更多详细信息。)
  • 将html生成的代码添加到问题中。感谢您的关注。我无法添加小提琴,因为有很多数据,无法处理。

标签: jquery asp.net asp.net-mvc charts flot


【解决方案1】:

您链接到生成代码的第三张图片的说明:

x 值为 103、110 和 114(来自var d_main_quest_bar_20 = [[103, 8.25],[110, 8.75],[114, 7.75],];)。 x 值之间的差异为 7 和 4,这解释了条形组之间的不同距离。您的条形宽度为0.4,因此每组条形的总宽度约为 1.6。你的酒吧组是居中的。综上所述:

start     end     width    description             tickname
--------------------------------------------------------------
102.2 to 103.8     1.6     first group of bars     Tesis
103.8 to 109.2     5.4
109.2 to 110.8     1.6     second group of bars    Program
110.8 to 113.2     2.4
113.2 to 114.8     1.6     third group of bars     Personel

因此,正如我在评论中提到的,即使您没有显示这些值,条形宽度和位置也是根据数据中的数字 x 值计算得出的。 (它与你在问题中暗示的刻度名称的长度无关,这只是一个巧合。)

如果您想以相等的距离显示组并且不关心它们的值,您可以使用类别插件 (example)。您必须检查/测试这是否与 orderbar 插件一起工作良好,以及在这种情况下如何计算条形宽度。

【讨论】:

  • 当我刚刚意识到原因可能是 103 和 110 之间的差异时,您的答案就来了。非常感谢您为我的问题抽出宝贵的时间。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-04-03
  • 2011-05-18
  • 2014-06-09
  • 2012-12-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多