【问题标题】:flot bar chart with long labels rendering issue带有长标签呈现问题的浮动条形图
【发布时间】:2013-08-28 12:00:35
【问题描述】:

我用长标签绘制了一个浮动条聊天,结果很难看,我看到可以显示旋转 90 度的标签,但我尝试使用以下代码但没有成功。我使用的javascript是

function onSuccess(series) {
            var tickLabels = [];
            var pieData= [];
            for (var i =0;i<series.length;i++){
                tickLabels.push([i,series[i][0]]);
            }
            var data = [series];
        var barArea = $("#barChart");  

        barArea.css("height", "400px");  
        barArea.css("width", "600px"); 


            $.plot( $("#barChart"), data, {
        series: {
         bars: {
            show:true,
            barWidth: 0.5,
            align: "center"
         },
            points: {
                show: true
            }
        },
        grid: {
            hoverable: true,
            clickable: true
        },
        xaxis: {
            labelWidth:12,
            labelAngle: 45,
            ticks: tickLabels
        }
        } );

图表

有没有人知道解决这个问题的方法。

编辑

是否可以在条形图中使用图例,然后将图例放在条形字符下方,如thisthis

【问题讨论】:

  • 是否可以提供您的代码示例并且 labelAngle 应该可以工作..在我的代码中这工作xaxis: { min: -0.5, max: 100, ticks: xaxisTicks, tickWidth: 0.5, labelAngle: -90, axisLabel: 'Test', axisLabelUseCanvas: true, axisLabelFontSizePixels: 10, axisLabelFontFamily: 'Arial', axisLabelPadding: 8 },
  • 我应该提供哪些代码,您使用的是哪个版本?
  • 我正在使用 0.7 ..我想要一个你如何在 jsfiddle 或 jsbin 中尝试的例子..
  • 我认为当前的 flot 版本中不存在此功能。它应该在 0.9 版本中确定下来。在这里查看冗长的讨论:github.com/flot/flot/pull/15

标签: javascript jquery flot bar-chart


【解决方案1】:

Flot 还不支持 labelAngle 选项。 Flot issue tracker 上有几个提案,但没有一个被接受。

我看到可以显示旋转 90 度的标签 度数

您所看到的(请提供链接?)似乎是 Flot 的分叉版本,例如 this 之一,它确实支持 labelAngle 选项。

【讨论】:

  • 一个有效的 jsFiddle 示例,它使用我的答案中链接的分叉 Flot 版本:jsfiddle.net/manishsp2008/vNSD8(由于新用户的 SO 2 链接限制,我无法将其添加到答案中)。
  • 我试过那个例子,但我收到一个错误Cannot read property 'opera' of undefined jquery.flot.js:1765 链接的flot
  • 该错误的原因在 jQuery 1.9 (stackoverflow.com/questions/15816712/…) 中已弃用并删除了 $.browser 您可以修改分叉的 Flot,第 #1765 行,将 if($.browser.opera) 替换为 if (navigator.userAgent.match(/opera/i))。
  • 非常感谢,是否可以将标签包装成多行,在倾斜 2 处,而不是一长行
【解决方案2】:

您可以使用Flot Tickrotor 插件。不过,我不确定它是否仍然适用于 0.7;它最近更新为与 0.8 一起使用,这可能破坏了向后兼容性。

我们现在正在努力将插件的功能集成到 0.9 中。

我应该指出,简单地旋转文本仍然看起来很奇怪;如果不缩短标签,就无法避免这种情况。

【讨论】:

  • 这个插件不会移除原来的标签,而是广告自己的旋转标签和下移flot水平标签
  • 对不起,我应该提到这一点;这是我们修复的错误,但尚未发布次要版本。如果你从 Github (github.com/flot/flot) 获取最新的 master,它应该可以正常工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多