如果数据通过函数作为参数传递,则jqplot不会出现

时间:2014-07-10 18:49:43

标签: javascript php json jqplot

我正在尝试显示jqplot,并且正在通过像function updatetestGraph(graphData)这样的函数参数传递创建图表所需的数据 如果我执行console.log(graphData),我会看到以下JSON

[['07/9/2014',500],['07/8/2014',900],['07/7/2014',1200],['07/6/2014',500],['07/5/2014',500],['07/4/2014',500],['07/11/2014',3000]]

问题是如果我将graphData分配给另一个JS变量或直接使用graphData来显示它不起作用的图形,但是如果我从控制台日志中复制JSON,那么图形就会很好。我不明白什么是JSON是相同的并且格式相同的问题。

如果我使用graphData或将其分配给另一个变量,我得到的错误是Error: No data specified

以下是我用来显示图形的JS函数

function updatetestGraph(graphData) {
    $('#how_long').empty();
    var newHolidaysData;
    newHolidaysData = graphData;
    console.log(newHolidaysData);
    how_long_plot = $.jqplot('how_long', [newHolidaysData], {
        seriesColors: [ "#F2A809"],
        series: [
            {
                lineWidth: 5,
                markerOptions: { style: 'circle' }
            }
        ],
        grid: {
            background: 'transparent',
            borderColor: '#ffffff',
            borderWidth: 2.0
        },
        axes: {
            xaxis: {
                tickInterval: '1 day',
                renderer: $.jqplot.DateAxisRenderer,
                labelRenderer: $.jqplot.CanvasAxisLabelRenderer,
                shadowAlpha: '0.1',
                tickOptions: {
                    angle: 15,
                    showGridline: false,
                    color: '#ffffff',
                    formatString: '%b %#d'
                }
            },
            yaxis: {
                min: 0,
                max:<?php echo $factfinddata->getFactFind('holiday_goal_target'); ?>,
                label: '',
                labelRenderer: $.jqplot.CanvasAxisLabelRenderer,
                tickOptions: {
                    showGridline: false,
                    prefix: '$'
                }
            }
        }
    });
    //end of script for how long will it take me chart
}

我将非常感谢这里的任何帮助,请不要让我创造小提琴,因为我还没有探索小提琴是如何工作的,而且我很沮丧,试图让它起作用。

1 个答案:

答案 0 :(得分:0)

Here是您问题的解决方法。

我为xaxis添加了一个min值,以便能够绘制图形。如果你评论第24行:

min: '07/1/2014'

图表未呈现。

另一个解决方案是删除tickInterval选项以绘制图形。

也许您的问题与此类问题有关?请让我发布。