PDA

View Full Version : مشکل در قرارد دادن category در highcharts



vb8334
یک شنبه 25 فروردین 1392, 13:36 عصر
با سلام به تمامی دوستان

دوستان من یه مشکلی دارم اونم اینکه من یه آرایه تعریف کردم و توی آرایه مقادیر زمان دادم که می خوام
نشونش بدم تو highcharts ولی نمیشه و ارور میده من کد رو اینجا قرار میدم

ممنون

vb8334
دوشنبه 26 فروردین 1392, 22:56 عصر
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>

<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="https://raw.github.com/highslide-software/highcharts.com/v2.1.9/js/highcharts.src.js"></script>
<script>
var data0 = [10, 5, 95, 30, 4, 33, 90, 80, 42, 14, 17];
var data1 = ['02:59:27', '02:59:41', '02:59:49', '02:59:58', '03:00:06', '03:00:14', '03:00:23', '03:00:32', '03:00:39', '03:00:47'];
setInterval(function (data1) {
var cats = chart.xAxis[0].categories;
cats.push(data1);
chart.xAxis.setCategories(data1, false);
chart.series[0].addPoint(Math.floor((Math.random() * 100) + 1), true, true);
}, 2000);
$(function () {
//chart.xAxis[0].setCategories(['One', 'Two', 'Three', 'four', 'One', 'Two', 'Three', 'four', 'One', 'Two', 'Three']);
chart = new Highcharts.Chart({
chart: {
renderTo: 'chart',
zoomType: 'x',
defaultSeriesType: 'areaspline'
},
legend: {
layout: 'vertical',
align: 'right',
verticalAlign: 'top',
borderWidth: 0
},
title: {
text: 'Online Users',
x: -20 //center
},
xAxis: {
categories: cats,
labels: {
rotation: -45,
style: { color: '#000' }
},
tickInterval: 25
},
yAxis: {
title: {
text: 'Count'
},
plotLines: [{
value: 0,
width: 1,
color: '#808080'
}]
},
series: [

{
name: 'WLAN TX',
data: data0
, lineWidth: 1
},
]
, plotOptions: {
//series: {
// stacking: null
//},
areaspline: {
marker: {
enabled: false,
symbol: 'circle'
}
}
, spline: {
marker: {
enabled: false,
symbol: 'circle'
}
}
}
});
});
</script>
</head>
<body>
<div id="chart"></div>
</body>
</html>

من می خوام آرایه data1 رو تو category چارت نمایش بدم

var data1 = ['02:59:27', '02:59:41', '02:59:49', '02:59:58', '03:00:06', '03:00:14', '03:00:23', '03:00:32', '03:00:39', '03:00:47'];

من برای قرار دادن category از این کد استفده می کنم اما ارور میده. تکه کد که مربوط به قرار دادن category هستش رو اینجا میزارم.
من کد کامل رو قرار دادم گفتم دیگه فایل رو دانلود نکنید.



var cats = chart.xAxis[0].categories;
cats.push(data1);
chart.xAxis.setCategories(data1, false);

hakan648
پنج شنبه 29 فروردین 1392, 22:50 عصر
سلام
من دو سری کدهاتو گرفتم و کمی بررسی کردم، نتونستم دقیقا بفهمم چیکار میخوای بکنی.
شاید اگه از اول و کامل توضیح بدی بهتر باشه تا اینکه وسط راه ، وفتی فقط خودت میدونی چیکار کردی بخوای که مشکلت رو فرد دیگه ای بتونه حل کنه.

با کمی تغییر و حذف نصف کدهات ( حلقه ی اول و ... که به مقادیر داخل تابع ready دسترسی نداشتن و باعث خطا می شدن ) تونستم یه خروجی بگیرم. اما فکر کردم خروجی صحیح نمیده.
سمپلی هم که خود سازنده این محصول ارائه کرده رو دیدم، خیلی ساده تر و مفهوم تر از چیزی که شما نوشتی هست. ( سمپل رو دیدی؟ (http://jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/highcharts.com/tree/master/samples/highcharts/demo/line-basic) )

پس یه نگاهی به سمپل بنداز ، اگه نتونستی بازم درست کنی کدت رو ، از اول کامل همه چیز رو توضیح بده.