尝试隐藏第二个轴刻度时,图表向上移动

Flot graph shifting upwards when trying to hide the second axis ticks

我目前正在研究一些显示与时间相关的单组和多组数据的浮点图。下面是图表上一组数据的示例图像。

Single data set

日期时间选择器允许用户比较第二个数据集覆盖初始数据集的两个时间范围。我遇到的问题是,当第二个数据集被绘制在第一个数据集上时,整个图表向上移动,显示一个大的白色 space,隐藏的刻度应该在那里,请参见下面的示例图像。

Multiple dataset

如您所见,数据集是不同的时间范围,因此不能在同一轴上,因为它们是比较。这是我的轴选项。

xaxes: [{
            tickColor: "#fff",
            mode: "time",
            timeformat: timeFormat,
            minTickSize: tickSize,
            font: {
                style: "normal",
                color: "#666666"
            },
            axisLabel: xLabel,
            axisLabelUseCanvas: true,
            axisLabelFontSizePixels: 11,
            axisLabelColour: "#666666",
            axisLabelFontFamily: 'Open Sans',
            axisLabelPadding: 20
        },
        {
            ticks: [],
            mode: "time",
            timeFormat: timeFormat
        }],

在第二个 x 轴上应用选项 show: false 会完全删除移动,但是因为它是 false,所以我的图形点工具提示也被删除。

如果需要知道,我正在使用 flot.time、flot.tooltip 和 flot.axislabels。 这是我的第一个问题,所以任何反馈都很好 :)

My example on JSFiddle.

归结为 2 个主要变化。将比较图数据分配给第二个 x 轴:

var dataSet = [{
            data:  [
                [1467669600000, 12],
                [1467709200000, 14]
            ],
            label: 'data1',
            xaxis: 1
        }, {
            data:  [
                [1467583200000, 15],
                [1467622800000, 13],
                [1467662400000, 16]
            ],
            label: 'data2',
            xaxis: 2
        }];

为了美观,您应该隐藏第二个 x 轴,这样它就不会反映相同的时间(设置 show: false

{
    "show": false,
    "mode": "time",
    "timeformat": "%H:%M",
    "tickSize": [2, "hour"],
    "min": 1467583200000,
    "max": 1467666000000,
    "timezone": "browser"
}