【问题标题】:Highchart - xAxis values are to closeHighchart - xAxis 值将关闭
【发布时间】:2013-07-30 17:35:15
【问题描述】:

我有一个经典折线图,x 轴为每周日期。

但是如果我输入很多值,底部的日期就无法读取(太接近了)。

$(function () { 
$('#container').highcharts({ 
    xAxis: {
        tickInterval:  7 * 24 * 3600 * 1000,
        type: 'datetime', 
        labels: {
            format: '{value:%d/%m/%Y}',
            rotation: -45,
            y: 30,
            align: 'center'
        } 
    }, 
    plotOptions: {
        series: {
            pointStart: Date.UTC(2012, 4, 4),
            pointInterval: 7 * 24 * 3600 * 1000
        }
    },

    series: [{ 
        data: [29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4, 29.9, 71.5, 106.4]
    }]
});

http://jsfiddle.net/mf9Eg/

您知道是否可以对这些值进行智能分配?当它们太靠近时,例如只显示一对二。

谢谢。

【问题讨论】:

  • jsfiddle.net/mf9Eg/3 我在这里更新。这就是你要找的吗?
  • 不是真的。我可以有一个不确定的价值,这不仅仅是一个大小和旋转问题。如果您复制并粘贴 2 或 3 倍数据中的值,您将再次遇到问题。我需要 highchart 不会覆盖标签而是调整显示的数量。
  • 查看我的答案 - 您需要告诉它要标记多少刻度。如果您将tickInterval 留空,它将动态调整标签间隔。

标签: highcharts


【解决方案1】:

您可以使用标签的step 属性。 试试下面的代码。

labels: {
            format: '{value:%d/%m/%Y}',
            rotation: -45,
            y: 30,
            align: 'center',
            step:3
        } 

【讨论】:

  • 好吧,我得自己算了。步骤将帮助我。谢谢。
  • 问题在于,在缩放时,当您有更多空间时,步长仍设置为 3。这意味着有时您甚至看不到一个标签。不过,我仍然赞成这个答案,step 属性很有帮助。
【解决方案2】:

我通常做的是确定我有多少数据点,然后相应地调整tickInterval。您将其设置为硬编码值。您需要根据拥有的数据点数量、xAxis 标签的对齐/旋转以及这些标签上使用的字体找出最适合您的方法。

【讨论】:

    猜你喜欢
    • 2011-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-25
    • 1970-01-01
    • 2016-05-29
    • 1970-01-01
    相关资源
    最近更新 更多