Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Google折线图-v和f属性设置_Php_Json_Google Visualization_Linechart - Fatal编程技术网

Php Google折线图-v和f属性设置

Php Google折线图-v和f属性设置,php,json,google-visualization,linechart,Php,Json,Google Visualization,Linechart,我试图让我的折线图以字符串格式显示工具提示中的结果(例如:2015年6月28日-2015年7月4日),同时让我的hAxis以日期格式显示其值(例如:6月29日) 与分析类似: 但是,当我使用返回的Json数据绘制图表时,如下所示: { "cols": [{ "id": "A", "label": "Date Range", "pattern": "", "type": "string" }, {

我试图让我的折线图以字符串格式显示工具提示中的结果(例如:2015年6月28日-2015年7月4日),同时让我的hAxis以日期格式显示其值(例如:6月29日)

与分析类似:





但是,当我使用返回的Json数据绘制图表时,如下所示:

{
    "cols": [{
        "id": "A",
        "label": "Date Range",
        "pattern": "",
        "type": "string"
    }, {
        "id": "B",
        "label": "Sessions",
        "pattern": "",
        "type": "number"
    }, {
        "id": "C",
        "label": "Pageviews",
        "pattern": "",
        "type": "number"
    }],
    "rows": [{
        "c": [{
            "v": "Date(2015,5,23)",
            "f": "Jun 23, 2015 - Jun 27, 2015"
        }, {
            "v": 1645
        }, {
            "v": 5237
        }]
    }, {
        "c": [{
            "v": "Date(2015,5,28)",
            "f": "Jun 28, 2015 - Jul 04, 2015"
        }, {
            "v": 2189
        }, {
            "v": 6977
        }]
    }, {
        "c": [{
            "v": "Date(2015,6,05)",
            "f": "Jul 05, 2015 - Jul 11, 2015"
        }, {
            "v": 2168
        }, {
            "v": 6862
        }]
    }, {
        "c": [{
            "v": "Date(2015,6,12)",
            "f": "Jul 12, 2015 - Jul 18, 2015"
        }, {
            "v": 1661
        }, {
            "v": 5735
        }]
    }, {
        "c": [{
            "v": "Date(2015,6,19)",
            "f": "Jul 19, 2015 - Jul 23, 2015"
        }, {
            "v": 1109
        }, {
            "v": 3826
        }]
    }]
}


我的图表显示的是具有f属性值而不是v属性值的hAxis,如下所示:

{
    "cols": [{
        "id": "A",
        "label": "Date Range",
        "pattern": "",
        "type": "string"
    }, {
        "id": "B",
        "label": "Sessions",
        "pattern": "",
        "type": "number"
    }, {
        "id": "C",
        "label": "Pageviews",
        "pattern": "",
        "type": "number"
    }],
    "rows": [{
        "c": [{
            "v": "Date(2015,5,23)",
            "f": "Jun 23, 2015 - Jun 27, 2015"
        }, {
            "v": 1645
        }, {
            "v": 5237
        }]
    }, {
        "c": [{
            "v": "Date(2015,5,28)",
            "f": "Jun 28, 2015 - Jul 04, 2015"
        }, {
            "v": 2189
        }, {
            "v": 6977
        }]
    }, {
        "c": [{
            "v": "Date(2015,6,05)",
            "f": "Jul 05, 2015 - Jul 11, 2015"
        }, {
            "v": 2168
        }, {
            "v": 6862
        }]
    }, {
        "c": [{
            "v": "Date(2015,6,12)",
            "f": "Jul 12, 2015 - Jul 18, 2015"
        }, {
            "v": 1661
        }, {
            "v": 5735
        }]
    }, {
        "c": [{
            "v": "Date(2015,6,19)",
            "f": "Jul 19, 2015 - Jul 23, 2015"
        }, {
            "v": 1109
        }, {
            "v": 3826
        }]
    }]
}



hAxis的数据类型设置为字符串

根据所提供的信息,我可以问一下如何实现我想要的结果吗?

您是否尝试过设置
'options'->'vAxis'->'ticks'
参数

然后您的json数据将如下所示:

{
  "cols": [your columns],
  "rows": [your rows],
  "options": {
     "vaxis": {
       "ticks": ["jun 29", "jul 6", "jul 13"]
     }
   }
}
,我认为这有帮助:-)

编辑:

。我不知道您正在使用什么方法加载数据,但这对我有效


由于某些原因,在我在options中设置宽度和高度参数后,标签显示正确。

基于@bjarkig82提供的工作JSFIDLE。我已经想到了如何解决这个问题并实现我的目标

首先,列日期的数据类型需要从string更改为date

var cols = [{
        "id": "A",
            "label": "Date Range",
            "pattern": "",
            "type": "date"
    }, {
        "id": "B",
            "label": "Sessions",
            "pattern": "",
            "type": "number"
    }, {
        "id": "C",
            "label": "Pageviews",
            "pattern": "",
            "type": "number"
    }];

    var rows = [{
        "c": [{
            "v": "Date(2015,5,23)",
                "f": "Jun 23, 2015 - Jun 27, 2015"
        }, {
            "v": 1645
        }, {
            "v": 5237
        }]
    }, {
        "c": [{
            "v": "Date(2015,5,28)",
                "f": "Jun 28, 2015 - Jul 04, 2015"
        }, {
            "v": 2189
        }, {
            "v": 6977
        }]
    }, {
        "c": [{
            "v": "Date(2015,6,05)",
                "f": "Jul 05, 2015 - Jul 11, 2015"
        }, {
            "v": 2168
        }, {
            "v": 6862
        }]
    }, {
        "c": [{
            "v": "Date(2015,6,12)",
                "f": "Jul 12, 2015 - Jul 18, 2015"
        }, {
            "v": 1661
        }, {
            "v": 5735
        }]
    }, {
        "c": [{
            "v": "Date(2015,6,19)",
                "f": "Jul 19, 2015 - Jul 23, 2015"
        }, {
            "v": 1109
        }, {
            "v": 3826
        }]
    }];

其次,我对下面显示的代码部分进行注释,否则将导致我的字符串日期(例如:2015年6月28日-2015年7月4日)在工具提示中显示为日期(例如:2015年6月28日)

var formatter = new google.visualization.DateFormat({ pattern: "EEEE, MMM dd, yyyy" });
formatter.format(data, 0);


为了更好地理解,请查看此

谢谢您的帮助。是的,我试过vAxis和hAxis,但都不管用。以下是我尝试过的格式列表。--<代码>风险值期权={hAxis:{ticks://[新日期(2015,5,23),新日期(2015,5,28),新日期(2015,6,05),新日期(2015,6,12)]//[“日期(2015,5,23)”,“日期(2015,5,28)”,“日期(2015,6,05)”,“日期(2015,6,12)”]/[“6月23日”,“6月28日”,“7月5日”,“7月12日”}我创建了一个工作JSFIDLE并编辑了我的答案。试试看:-)谢谢。根据你的代码,我已经找出了问题的原因。