#jquery #html #highcharts #highstock
#jquery #HTML #графики максимумов
Вопрос:
У меня есть следующий код. jsfiddle, идея кнопки ввода которого заимствована из этого jsfiddle
мой код javascript:
$(function () { $.getJSON('http://www.highcharts.com/samples/data/jsonp.php?filename=aapl-ohlc.jsonamp;callback=?', function (data) {
Highcharts.setOptions({
global: {
timezoneOffset: 7 * 60
}
});
// Create the chart
var end = 1363935600000;
var chart = new Highcharts.StockChart({
chart: {
renderTo: 'container'
},
title: {
text: 'AAPL Stock Price'
},
rangeSelector: {
inputEnabled: false,
selected: 0,
buttonTheme: {
width: null
},
buttons: [{
type: 'day',
count: 6,
text: 'past 7 days'
}, {
type: 'day',
count: 14,
text: 'past 15 days'
}, {
type: 'day',
count: 29,
text: 'past 30 days'
}, {
type: 'day',
count: 59,
text: 'past 60 days'
}, {
type: 'day',
count: 179,
text: 'past 180 days'
}]
},
xAxis: {
max: end,
type: 'datetime',
minTickInterval: 24 * 3600 * 1000
},
navigator: {
enabled: false
},
scrollbar: {
enabled: false
},
series: [{
name: 'AAPL',
data: data,
tooltip: {
valueDecimals: 3
}
}]
});
// Toggle point markers
var enableMarkers = true;
$('#markers').click(function () {
chart.series[0].update({
marker: {
enabled: enableMarkers,
radius: 5,
fillColor: '#0000FF'
}
});
enableMarkers = !enableMarkers;
});
// Toggle point markers
var color = false;
$('#color').click(function () {
chart.series[0].update({
color: color ? null : Highcharts.getOptions().colors[1]
});
color = !color;
});
// Set type
$.each(['line', 'spline', 'area', 'areaspline', 'candlestick', 'ohlc'], function (i, type) {
$('#' type).click(function () {
chart.series[0].update({
type: type
});
});
});
});
});
мой HTML-код:
<script src="http://code.highcharts.com/stock/highstock.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/stock/modules/exporting.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>
<div id="container" style="height: 400px; min-width: 600px"></div>
<button id="markers">Toggle point markers</button>
<button id="color">Toggle color</button>
<button id="line" style="margin-left: 2em">Line</button>
<button id="spline">Spline</button>
<button id="area">Area</button>
<button id="areaspline">Area spline</button>
<button id="ohlc">OHLC</button>
<button id="candlestick">Candlestick</button>
Обновите вопрос:
это отлично работает с образцом набора данных.
Но если я изменю приведенный ниже набор данных:
1279609200000 74
1279695600000 685
1279782000000 1123
1279868400000 666
1279954800000 166
1280041200000 84
1280127600000 302
1280214000000 492
1280300400000 571
1280386800000 602
1280473200000 583
1280559600000 570
1280646000000 493
1280732400000 685
1280818800000 702
1280905200000 549
как отобразить график свечей и ohlc? Спасибо.
Комментарии:
1. получите файл JSON из highcharts.com/sample/data/jsonp.php и сохраните его на своем локальном компьютере, может быть, это сработает!
2. даже если я изменю файл json как локальный, он все равно не сможет отображать график в Chrome. И прямо сейчас Firefox не может отображать тип candle и OHLC в highstocks
3. вы получаете какую-либо ошибку в консоли?
4. Я думаю, вам не хватает файла версии jquery!
5. в локальный html я включаю файл версии jquery. в jsfiddle мне не нужно включать