Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Данные для построения графиков. (https://javascript.ru/forum/misc/66943-dannye-dlya-postroeniya-grafikov.html)

ureech 19.01.2017 18:22

Я скопировал ваш код в песочницу и проверил. Средний график отсутствует.
http://codepen.io/Ureech/pen/VPPJpb

Dilettante_Pro 19.01.2017 18:49

Действительно, что-то никак не хочет
<div class="col-xs-12 col-xl-6">
<div id="chart_1" class="chart"></div>
</div>
<div class="col-xs-12 col-xl-6">
<div id="chart_2" class="chart"></div>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<script src="http://dieta.ewbolg.ru/templates/_default_/js/highcharts.js"></script>
<script>
var chart1, chart2;

// Once DOM (document) is finished loading
$(document).ready(function() {
  var leg = "15,15,18,40,30,25,60,60,80,70";
  var legs = leg.split(",");  
  alert(legs.length);

    // First chart initialization
    chart1 = new Highcharts.Chart({
     chart: {
        renderTo: 'chart_1',
        type: 'line',
        height: 350,
     },
     title: {
        text: 'Изменение размеров шеи,талии и бёдер за 10 недель в %'
     },
     xAxis: {
        categories: [1,2,3,4,5,6,7,8,9,10]
     },
     yAxis: {
        title: {
           text: 'Interviewed'
        }
     },
     series: [{
        name: 'Талия',
        data: [5, 10, 20, 22, 25, 28, 30, 40, 80, 90]
     }, {
        name: 'Бёдра',
        data: legs
     }, {
        name: 'Шея',
        data: [1, 3, 6, 0, 50, 25, 50, 60, 30, 100]
     }]
    });
})

</script>

причем с
var legs = [15,15,18,40,30,25,60,60,80,70];
работает

ureech 19.01.2017 21:26

Возможно нужно подставлять массив
Array [ "145.00","0.00","0.00","0.00","0.00","0.00","0 .00" ], но убрать кавычки.

ureech 20.01.2017 09:54

Вопрос решил.Всем большое спасибо.
var leg = "15,15,18,40,30,25,60,60,80,70";
var legs = leg.split(",");
for(var i=0; i<legs.length; i++) {
    legs[i] = +legs[i];
}

ureech 21.01.2017 16:50

Блин, теперь застрял на получении нескольких строк. Раннее в запросе к базе был один параметр
SELECT hip...
Теперь два
SELECT hip,neck...
........
            while ($data = $inDB->fetch_assoc($result)) {                
			   $list['hip']       =  $data['hip'];
			   $list['neck']     =  $data['neck'];
            }
echo json_encode($list);

Пытаюсь получить на выходе, в аяксе две строки и никак. Пробую уже с помощью json хоть что то получить
$.ajax({
		url:'/dieta/admin/full-report.html',
		data:{grf: '1',ot:ot,to:to},
		dataType:'json',
		success : function (data) {
		for(var i=0; i<data.length; i++) {
        var res1 = (data.hip[i]);
        var res2 = (data.neck[i]);
			}
})


Ничего не выходит. {"hip":"0.00","neck":"0.00"},те последнии значения и ошибка
TypeError: data is undefined
Подскажите как решить.Уже устал тыкаться.

ureech 21.01.2017 22:45

С этим вроде разобрался. Имею в data
[{"hip":"140","neck":"58"},{"hip":"145","neck":"55"}]

success : function (data) {
		var res1 = [];
		for(var i=0; i<data.length; i++) {
        res1 += data[i].hip;				
			}
		console.log(hip) //140145
}

Но при hip.split(',') не хочет разделять числа запятой.Упорно выводит
array["140145"]
Почему?

laimas 22.01.2017 04:42

Зачем отдавать клиенту ассоциативный массив, если ему требуется индексный?


Часовой пояс GMT +3, время: 02:20.