Javascript 将日期字符串格式化为图表

Javascript 将日期字符串格式化为图表,javascript,datetime,format,highcharts,Javascript,Datetime,Format,Highcharts,我一直在尝试将最小和最大字符串日期插入我的highcharts图表,如下所示: var formatted_startDate = startDate.replace(/-/g, ","); var formatted_endDate = endDate.replace(/-/g, ","); //Format now is "yyyy,mm,dd" options = { chart: { renderTo: 'contai

我一直在尝试将最小和最大字符串日期插入我的highcharts图表,如下所示:

    var formatted_startDate = startDate.replace(/-/g, ",");
    var formatted_endDate = endDate.replace(/-/g, ",");

    //Format now is "yyyy,mm,dd"
    options = {
       chart: {
           renderTo: 'container',
           type: 'bar'
       },
       xAxis: {
          type: "datetime",
        dateTimeLabelFormats: {
            day: '%m-%d'   
            },
        tickInterval: 24 * 3600 * 1000,
        min: Date.UTC(formatted_startDate),
        max: Date.UTC(formatted_endDate)

       },
显然,上面的方法行不通,因为我正在传递字符串。我这样写是为了说明我正在尝试做什么,而不是发布大量失败尝试的代码。我尝试使用JSON.parse和eval(),但语法有问题


任何帮助都将不胜感激。Cheers

最终只是在highcharts API中使用了setExtremes方法

    var formatted_startDate = startDate.replace(/-/g, ",");
    var formatted_endDate = endDate.replace(/-/g, ",");
            //Format now is "2000,00,00"

    var startdatearray = formatted_startDate.split(",");
    var enddatearray = formatted_endDate.split(",");

    var sy = parseInt(startdatearray[0]);
    var sm = parseInt(startdatearray[1],10) - 1;
    var sd = parseInt(startdatearray[2]);
    var ey = parseInt(enddatearray[0]);
    var em = parseInt(enddatearray[1],10) - 1;
    var ed = parseInt(enddatearray[2]); 

    chart = new Highcharts.Chart(options);
        chart.xAxis[0].setExtremes(Date.UTC(sy,sm,sd), Date.UTC(ey, em, ed)); 

您是否尝试过使用“新日期(格式化日期)”?我考虑过,但是这不会将任何日期转换为yyyy/mm/dd格式吗?highcharts所需的格式为yyyy,mm,ddI我认为您需要首先检查是否可以在xAxis中使用min和max。当然可以使用min和max,通过将值直接插入到代码中进行测试,如min:Date.UTC(2000,02,19)。尝试过吗?这是图书馆里一个额外的好东西,经常被忽视,而且非常方便,不仅仅是对hc本身。