Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / как обработать JSONObject / 25 сообщений из 30, страница 1 из 2
19.05.2015, 19:24
    #38963251
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
Здравствуйте всем!
не стал создать новую тему и решил писать сюда, т.к. вопрос по highchats.
есть js код вот
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
$(function () {
	var date_json = new Array();
	var info_json = new Array();
	  
	for(i = 0, i < data.json_date.length; i++){
	    date_json.push(data.json_date[i].value);
	}
	  
	for(i = 0, i < data.json_info.length; i++){
	    info_json.push([data.json_info[i].key, parseInt(data.json_info[i].value)]);
	}
	$.getJSON('bosschart', function(data){
	    $('#bosschart').highcharts({
	        chart: {
	            type: 'column'
	        },
	        title: {
	            text: 'Stacked column chart'
	        },
	        xAxis: {
	            categories: date_json //['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas']
	        },
	        yAxis: {
	            min: 0,
	            title: {
	                text: 'Total fruit consumption'
	            },
	            stackLabels: {
	                enabled: true,
	                style: {
	                    fontWeight: 'bold',
	                    color: (Highcharts.theme && Highcharts.theme.textColor) || 'gray'
	                }
	            }
	        },
	        legend: {
	            align: 'right',
	            x: -30,
	            verticalAlign: 'top',
	            y: 25,
	            floating: true,
	            backgroundColor: (Highcharts.theme && Highcharts.theme.background2) || 'white',
	            borderColor: '#CCC',
	            borderWidth: 1,
	            shadow: false
	        },
	        tooltip: {
	            formatter: function () {
	                return '<b>' + this.x + '</b><br/>' +
	                    this.series.name + ': ' + this.y + '<br/>' +
	                    'Total: ' + this.point.stackTotal;
	            }
	        },
	        plotOptions: {
	            column: {
	                stacking: 'normal',
	                dataLabels: {
	                    enabled: true,

	                    color: (Highcharts.theme && Highcharts.theme.dataLabelsColor) || 'white',

	                    style: {

	                        textShadow: '0 0 3px black'

	                    }
	                }
	            }
	        },
	        series: [{
	            name: 'John',
	            data: [5, 3, 4, 7, 2]
	        }, {
	            name: 'Jane',
	            data: [2, 2, 3, 2, 1]
	        }, {
	            name: 'Joe',
	            data: [3, 4, 4, 2, 5]
	        }]
	    });
	})
});



я сюда хочу поставить свои значения из БД.
[{
name: 'John',
data: [5, 3, 4, 7, 2]
}, {
name: 'Jane',
data: [2, 2, 3, 2, 1]
}, {
name: 'Joe',
data: [3, 4, 4, 2, 5]
}]

для этого создал переменную info_json и вместо той строки написал series:info_json но не получил ожидаемого...

посмотрел консоле javascript там респонс вот таком виде: "{"json_info":[{"name":"NAME1","data":"[0,2,0,3]"},{"name":"NAME2","data":"[1,4,2,3]"},{"name":"NAME3","data":"[5,2,9,13]"}]}"

что делаю не правильно? подскажите пожалуйста...
...
Рейтинг: 0 / 0
20.05.2015, 18:46
    #38964543
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
ни у кого нет мнений или идеи?
...
Рейтинг: 0 / 0
20.05.2015, 19:05
    #38964555
-k2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
Музаффар,

внести форы внутрь ?
$.getJSON('bosschart', function(data){
...
$('#bosschart').highcharts({
...
Рейтинг: 0 / 0
20.05.2015, 19:12
    #38964560
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
-k2-Музаффар,

внести форы внутрь ?
$.getJSON('bosschart', function(data){
...
$('#bosschart').highcharts({

можете ещё точнее объяснить? я по JS вообще нуб...
...
Рейтинг: 0 / 0
20.05.2015, 19:20
    #38964564
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
-k2-,

ведь я как на сабже сказал уже получаю же "{"json_info":[{"name":"NAME1","data":"[0,2,0,3]"},{"name":"NAME2","data":"[1,4,2,3]"},{"name":"NAME3","data":"[5,2,9,13]"}]}" а вот дальше не совсем понимаю
при series:json_info ----- получаю НИЧЕГО
при series:[{json_info}] ------ тоже самое

вот что надо написать чтоб диаграмма рисовался... уже замучился (((
...
Рейтинг: 0 / 0
20.05.2015, 19:29
    #38964573
-k2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
Музаффар,

var data = '{"json_info":[{"name":"NAME1","data":"[0,2,0,3]"},{"name":"NAME2","data":"[1,4,2,3]"},{"name":"NAME3","data":"[5,2,9,13]"}]}';
var s = JSON.parse(data).json_info;
console.log(s);
...
Рейтинг: 0 / 0
20.05.2015, 19:50
    #38964589
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
-k2-Музаффар,

var data = '{"json_info":[{"name":"NAME1","data":"[0,2,0,3]"},{"name":"NAME2","data":"[1,4,2,3]"},{"name":"NAME3","data":"[5,2,9,13]"}]}';
var s = JSON.parse(data).json_info;
console.log(s);
что должен получить? прямо эту строку? если да то получаю вот только не совсем понял зачем написать статику если json_info формируется из данных бд?
...
Рейтинг: 0 / 0
20.05.2015, 21:49
    #38964650
mini.weblab
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
Музаффар,
у вас график с данными из примера рисуется?
а с вашими нет. так?
...
Рейтинг: 0 / 0
20.05.2015, 23:38
    #38964710
mini.weblab
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
mini.weblab,
у меня все отрисовалось с вашими данными:
data должна содержать массив, а не строку

var json_info=[
{"name":"NAME1",
"data":[0,2,0,3]},
{"name":"NAME2","data":[1,4,2,3]},
{"name":"NAME3","data":[5,2,9,13]}
]
...
Рейтинг: 0 / 0
21.05.2015, 11:29
    #38965013
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
mini.weblabМузаффар,
у вас график с данными из примера рисуется?
а с вашими нет. так?
да.

mini.weblabmini.weblab,
у меня все отрисовалось с вашими данными:
data должна содержать массив, а не строку

var json_info=[
{"name":"NAME1",
"data":[0,2,0,3]},
{"name":"NAME2","data":[1,4,2,3]},
{"name":"NAME3","data":[5,2,9,13]}
]

вот как это сделать? объясните пожалуйста новичку...
...
Рейтинг: 0 / 0
21.05.2015, 11:37
    #38965025
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
mini.weblab var json_info=[
{"name":"NAME1",
"data":[0,2,0,3]},
{"name":"NAME2","data":[1,4,2,3]},
{"name":"NAME3","data":[5,2,9,13]}
]

у меня эти данные формируется из БД...
...
Рейтинг: 0 / 0
21.05.2015, 11:43
    #38965036
-k2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
Музаффар,

series:data.json_info
...
Рейтинг: 0 / 0
21.05.2015, 12:04
    #38965069
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
-k2-Музаффар,

series:data.json_info
нет, не работает...
...
Рейтинг: 0 / 0
21.05.2015, 14:36
    #38965311
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
-k2-series:data.json_info

если вывести через alert(data.json_info) то получаю undefined
...
Рейтинг: 0 / 0
21.05.2015, 14:41
    #38965321
-k2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
Музаффар,

а ты выведи data :)
...
Рейтинг: 0 / 0
21.05.2015, 14:44
    #38965327
-k2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
Музаффар,

хоть уточняй где алерт кстати :) используй лучше вместо него console.log(data)
давно бы не мучался, а сформировал данные нормально, у тебя на входе косяк, тебе уже сказали
...
Рейтинг: 0 / 0
21.05.2015, 14:51
    #38965337
kunaksergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
-k2-,
мне одному кажется что в
Код: javascript
1.
for(i = 0, i < data.json_date.length; i++)

ошибка синтаксиса
...
Рейтинг: 0 / 0
21.05.2015, 14:57
    #38965348
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
kunaksergey-k2-,
мне одному кажется что в
Код: javascript
1.
for(i = 0, i < data.json_date.length; i++)

ошибка синтаксиса

и какой же по ОСи х данные вставляется нормально, т.е. у меня дата типа (yyyy-mm-dd)
...
Рейтинг: 0 / 0
21.05.2015, 15:03
    #38965356
-k2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
kunaksergey,

не кажется, конешно, не считая области видимости data
...
Рейтинг: 0 / 0
21.05.2015, 15:13
    #38965375
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
-k2-Музаффар,

хоть уточняй где алерт кстати :) используй лучше вместо него console.log(data)
давно бы не мучался, а сформировал данные нормально, у тебя на входе косяк, тебе уже сказали

если console.log(data) то получаю вот такую картину:
...
Рейтинг: 0 / 0
21.05.2015, 15:23
    #38965386
-k2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
Музаффар,

было бы неплохо текущий код выложить
...
Рейтинг: 0 / 0
21.05.2015, 15:30
    #38965394
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
-k2-Музаффар,

было бы неплохо текущий код выложить

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
/stacked column chart
$(function () {
    //    var date_json = new Array();
    var info_json = new Array();
    var info_json_key = new Array();
    var info_json_chislo = new Array();
    $.getJSON('bosschart', function (data) {

        //        for (i = 0;i < data.json_date.length;i++) {
        //            date_json.push(data.json_date[i].key);
        //        }
        for (i = 0;i < data.json_info.length;i++) {
            info_json_key.push(data.json_info[i].name);
            info_json.push([data.json_info[i].name,parseInt(data.json_info[i].data)]);
            info_json_chislo.push(data.json_date[i].value);
            //            processed_json.push([data.abiturients_data[i].key, parseInt(data.abiturients_data[i].value)]); //пример
        }
//        for (i = 0;i < data.json_info.length;i++) {
//            alert(data);
//        }
        //        var data1 = info_json;//'{"json_info":[{"name":"NAME1","data":"[0,2,0,3]"},{"name":"NAME2","data":"[1,4,2,3]"},{"name":"NAME3","data":"[5,2,9,13]"}]}';
        //var s = JSON.parse(info_json);
        console.log(data); 

        $('#chartAbitsAndGroups').highcharts( {
            chart :  {
                type : 'column'
            },
            title :  {
                text : 'Stacked column chart'
            },
            xAxis :  {
                categories : info_json_chislo//['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas'] //date_json
            },
            yAxis :  {
                min : 0, title :  {
                    text : 'Total fruit consumption'
                },
                stackLabels :  {
                    enabled : true, style :  {
                        fontWeight : 'bold', color : (Highcharts.theme && Highcharts.theme.textColor) || 'gray'
                    }
                }
            },
            legend :  {
                align : 'right', x :  - 30, verticalAlign : 'top', y : 25, floating : true, backgroundColor : (Highcharts.theme && Highcharts.theme.background2) || 'white', borderColor : '#CCC', borderWidth : 1, shadow : false
            },
            tooltip :  {
                formatter : function () {
                    return '<b>' + this.x + '</b><br/>' + this.series.name + ': ' + this.y + '<br/>' + 'Total: ' + this.point.stackTotal;
                }
            },
            plotOptions :  {
                column :  {
                    stacking : 'normal', dataLabels :  {
                        enabled : true, color : (Highcharts.theme && Highcharts.theme.dataLabelsColor) || 'white', style :  {
                            textShadow : '0 0 3px black'
                        }
                    }
                }
            },
            series : //[{name : 'test', data : test},{name : 'tset', data : tset}]
            //            [{name : 'Abiturients',data:info_json}]
            data

            //                                                [{"name" : "John", "data" : [5, 3, 4, 7, 2, 2, 3, 2, 1]},
            //                                                {"name" : "Jane", "data" : [2, 2, 3, 2, 1, 2, 3, 2, 1]},
            //                                                {"name" : "Joe", "data" : [3, 4, 4, 2, 5, 4, 4, 2, 5]},
            //                                                {"name" : "Qwe", "data" : [3, 4, 4, 2, 5, 4, 4, 2, 5]}]
        });
    })

});
...
Рейтинг: 0 / 0
21.05.2015, 16:43
    #38965536
-k2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
Музаффар,

series : info_json
...
Рейтинг: 0 / 0
21.05.2015, 16:48
    #38965547
kunaksergey
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
вот пример рабочего кода:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>
<script>
$(function () {
	var json_data=[{
            data: [1, 2, 4, 8, 16, 32, 64, 128, 256, 512],
            pointStart: 1
        }];
    $('#container').highcharts({

        title: {
            text: 'Logarithmic axis demo'
        },

        xAxis: {
            tickInterval: 1
        },

        yAxis: {
            type: 'logarithmic',
            minorTickInterval: 0.1
        },

        tooltip: {
            headerFormat: '<b>{series.name}</b>
',
            pointFormat: 'x = {point.x}, y = {point.y}'
        },

        series: json_data
    });
});
</script>
</head>
<div id="container" style="min-width: 310px; height: 400px; margin: 0 auto"></div>
</html>
...
Рейтинг: 0 / 0
21.05.2015, 18:36
    #38965695
Музаффар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как обработать JSONObject
-k2-Музаффар,

series : info_json

в консоле все тот же как в рисунке... а вот в диаграмме появились некоторые изменения, а точнее:
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / как обработать JSONObject / 25 сообщений из 30, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]