4

所以我从数据库中提取一些数据并获取一个 UNIX 时间戳和一个数字。因此,假设 N(数字)在 D(日期)售出。

有几天不见了,比如周末。我需要它仍然显示这一天,但不需要任何数据。这是一个折线图。

2010 年 4 月 1 日,售出 50
个 2010 年 4 月 2 日,售出 53 个 2010 年
4 月 7 日,售出 10 个
(我有超过 1,000 条跨越几年的记录 - 所以我也会添加缩放)

所以图表应该仍然显示 4 月 1-7 日,但没有 3-6 的数据。(这条线将从 2-7 开始)。

关于如何做到这一点的任何想法?

谢谢,乔什

4

3 回答 3

4

看看这里:http ://highcharts.com/ref/#series “数据”属性的第二个例子。

你只需要转换 mysql 日期,将其转换为 UNIX 时间戳(UNIX_TIMESTAMP()),然后将其乘以 1000(JS 需要以微秒为单位的时间)...

于 2010-12-02T15:48:35.453 回答
1

在创建图表时缩放数据的 x 轴,以仅计算至少有一次销售的天数,并确保您的轴标记合理。

这意味着遍历整个数据集并确保它具有序列号。所以可能不是非常有效,并且肯定有利于预处理(数据库中用于“销售日”或其他内容的另一个键)。

于 2010-11-24T21:04:27.027 回答
0

您可以将数据绘制为普通 Y 数据并在 x 轴上使用格式化程序

dates = ['April 1 2010', 'April 2 2010', 'April 7 2010'];
numSold = [50, 53, 10];

chart = new Highcharts.Chart({
    series: [{
        type: 'line',
        data: numSold
    }],
    xAxis: {
        labels: {
            formatter: function() {
                var dateStr = dates[this.value];
                return dateStr;
            }
        }
    }
});
于 2010-12-15T06:19:02.597 回答