Highcharts空白图表带有x和y轴。

4

我想使用 highcharts 来创建一个没有数据但有 x 和 y 轴的空白图表。如何做到呢?

var chart = new Highcharts.Chart({

    chart: {
        renderTo: 'container'
    },

    yAxis: {        
        labels: {
            formatter: function() {
                return this.value +' km';
            }
        }
    },

    series: [{
        data: []        
    }]

});

它返回:

enter image description here

但是我想显示带有标签的y轴。

4个回答

6

您可以为xAxis和yAxis设置最小/最大值,并对所有数据使用null。

从@ZaheerAhmed的回答中派生,因为我认为它应该作为一种替代解决方案而不需要在事后隐藏数据。

例如:

yAxis: {
   min: 1,
   max:
} ,
xAxis: {
   min: 1,
   max: 50
},
series: {
   data:[null,null]
}

谢谢您的回答,但我有一个日期时间x轴,您如何配置最大和最小值?我尝试为特定日期放置UTC值,但没有成功,图表仍然完全白色。 - estemendoza
@estemendoza - 你有一个 jsfiddle 可以给我看一下吗? - Duniyadnd
@estemendoza - HighChart使用毫秒级的Unix时间戳。 - JaredBroad
@JaredBroad - 我尝试将最小值和最大值设置为毫秒,但没有成功。 - estemendoza
现在是否可以从x轴中删除默认名称,因为默认名称是[系列1,系列2]? - Rohitesh

3
您可以在设置属性后放置数据并隐藏系列。
ignoreHiddenSeries : false

这里有一个工作演示,如果你隐藏了系列,Y轴仍然可见。

非常感谢。这对我的情况很有用。 - Kevin

0

xAxisyAxis设置最小值和最大值不是一个好的解决方案!因为如果数据稍后加载(在解析时),那么您就没有自动计算的最小值和最大值。在Highcharts API中,它说:

如果为null,则自动计算最大值

所以当数据加载后,您应该将最小值和最大值设置回null。但在我的情况下,将其设置为null或甚至删除选项并没有导致自动计算(似乎很奇怪)。

相反我所做的是将charts.showAxes设置为true!就这样。看看Highcharts提供的演示

重要提示:当然,您需要将系列设置为类似于以下内容:

series: [
  {
    data: [null, null, null]
  },
  {
    data: [null, null, null]
  }
]

注意:确保xAxis.showEmptyyAxis.showEmpty被设置为true(默认情况下为true)。


0

顺便提一下,高图似乎已经内置了这个功能 yAxis.showEmpty

不幸的是,文档中列出的示例无法正常工作,并且相关的高图问题仍未解决:

no hide y axis


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接