Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.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
Javascript 在amCharts中查看动态ASHX数据_Javascript_Json_Amcharts_Ashx - Fatal编程技术网

Javascript 在amCharts中查看动态ASHX数据

Javascript 在amCharts中查看动态ASHX数据,javascript,json,amcharts,ashx,Javascript,Json,Amcharts,Ashx,我正在使用一个.ashx数据处理程序,它成功地调用并返回一个有效的JSON格式(使用确认) 我想在amChart中使用返回的数据。我的图表可以正确使用硬编码数据。如何使图表接受动态ashx JSON数据 <script type="text/javascript"> var chart = AmCharts.makeChart("chartdiv", { "type": "serial", "theme": "light", "

我正在使用一个.ashx数据处理程序,它成功地调用并返回一个有效的JSON格式(使用确认)

我想在amChart中使用返回的数据。我的图表可以正确使用硬编码数据。如何使图表接受动态ashx JSON数据

<script type="text/javascript">
    var chart = AmCharts.makeChart("chartdiv", {
        "type": "serial",
        "theme": "light",
        "marginRight": 70,
        "dataProvider": [{
            "date": "11/04/2014",
            "val1": 125,
            "val2": 150
         }, {
            "date": "11/05/2014",
            "val1": 100,
            "val2": 130
         }, 
         // ETC
         ]
         "valueAxes": [{
             "axisAlpha": 0,
             "position": "left",
             "title": "Visitors By Date"
         }],
        "graphs": [{
            "id": "val1",
            "title": "val1bar",
            "valueField": "val1",
            "type": "column",
            "balloonText": "VAL1<br>[[date]]<br>[[val1]]</div>"
        }, {
            "id": "val2",
            "title": "val2bar",
            "valueField": "val2",
            "type": "column",
            "balloonText": "VAL1<br>[[date]]<br>[[val1]]</div>"
        }],       
        "chartCursor": {
            "pan": true,
            "valueLineEnabled": true,
            "valueLineBalloonEnabled": true,
            "cursorAlpha": 0,
            "valueLineAlpha": 0.2
        },
        "categoryField": "date",
        "categoryAxis": {
            "gridPosition": "start",
            "labelRotation": 45
        },
    });
</script>

var chart=AmCharts.makeChart(“chartdiv”{
“类型”:“串行”,
“主题”:“光”,
“marginRight”:70,
“数据提供者”:[{
“日期”:“2014年4月11日”,
“瓦尔1”:125,
“val2”:150
}, {
“日期”:“2014年5月11日”,
“val1”:100,
“val2”:130
}, 
//等
]
“价值轴”:[{
“axisAlpha”:0,
“位置”:“左”,
“标题”:“按日期列出的访客”
}],
“图表”:[{
“id”:“val1”,
“标题”:“val1bar”,
“valueField”:“val1”,
“类型”:“列”,
“BallooText:“VAL1
[[date]]
[[VAL1]]” }, { “id”:“val2”, “标题”:“val2bar”, “valueField”:“val2”, “类型”:“列”, “BallooText:“VAL1
[[date]]
[[VAL1]]” }], “图表光标”:{ "泛":对,, “valueLineEnabled”:true, “ValueLineBalloodEnabled”:true, “cursorAlpha”:0, “valueLineAlpha”:0.2 }, “类别字段”:“日期”, “分类法”:{ “网格位置”:“开始”, “唇瓣旋转”:45 }, });
阿姆查特自己的插件可能是利用ASHX的JSON输出的最简单方法

基本上,您只需要包含
amcharts/plugins/dataloader/dataloader.min.js
,然后用
dataloader
信息替换
dataProvider
,如下所示:

var chart = AmCharts.makeChart( "chartdiv", {
  "type": "serial",
  "theme": "light",
  "marginRight": 70,
  "dataLoader": {
    "url": "mydata.ashx"
  },
  "valueAxes": [ {
    "axisAlpha": 0,
    "position": "left",
    "title": "Visitors By Date"
  } ],
  "graphs": [ {
    "id": "val1",
    "title": "val1bar",
    "valueField": "val1",
    "type": "column",
    "balloonText": "VAL1<br>[[date]]<br>[[val1]]</div>"
  }, {
    "id": "val2",
    "title": "val2bar",
    "valueField": "val2",
    "type": "column",
    "balloonText": "VAL1<br>[[date]]<br>[[val1]]</div>"
  } ],
  "chartCursor": {
    "pan": true,
    "valueLineEnabled": true,
    "valueLineBalloonEnabled": true,
    "cursorAlpha": 0,
    "valueLineAlpha": 0.2
  },
  "categoryField": "date",
  "categoryAxis": {
    "gridPosition": "start",
    "labelRotation": 45
  },
} );
var chart=AmCharts.makeChart(“chartdiv”{
“类型”:“串行”,
“主题”:“光”,
“marginRight”:70,
“数据加载器”:{
“url”:“mydata.ashx”
},
“valueAxes”:[{
“axisAlpha”:0,
“位置”:“左”,
“标题”:“按日期列出的访客”
} ],
“图表”:[{
“id”:“val1”,
“标题”:“val1bar”,
“valueField”:“val1”,
“类型”:“列”,
“BallooText:“VAL1
[[date]]
[[VAL1]]” }, { “id”:“val2”, “标题”:“val2bar”, “valueField”:“val2”, “类型”:“列”, “BallooText:“VAL1
[[date]]
[[VAL1]]” } ], “图表光标”:{ "泛":对,, “valueLineEnabled”:true, “ValueLineBalloodEnabled”:true, “cursorAlpha”:0, “valueLineAlpha”:0.2 }, “类别字段”:“日期”, “分类法”:{ “网格位置”:“开始”, “唇瓣旋转”:45 }, } );

默认情况下,Data Loader需要JSON数据,因此您不需要设置任何其他选项。

您是正确的。非常感谢。为了附加您的解决方案,我还需要进行后处理,因为我在JSON“dataLoader”中使用了一个子数组:{“url”:“queries/dataHandler_getDailyIncidentCount.ashx”,“后处理”:function(jsonData){return jsonData.aaData;},“format”:“JSON”},