Highcharts Stock Demo
author(s):
Torstein Hønsi
HTML
<div id="container" style="height: 400px; min-width: 600px"></div>
<div class="info">All the text labels should have a serif type.</div>
<script src="http://code.highcharts.com/stock/highstock.js"></script>
<script src="http://code.highcharts.com/stock/modules/exporting.js"></script>
<script type="text/javascript" src="http://www.highcharts.com/samples/data/usdeur.js"></script>
CSS
.info {
font: 0.7em sans-serif;
padding: 0.5em;
margin: 0.5em;
background: #FCFFC5;
border-radius: 0.5em;
border: 1px solid gray;
}
.info:before {
content:'i';
margin: 0.5em;
font: 1.5em serif bold;
font-style: italic;
color: green;
}
JavaScript
$(function () {
(function (HC) {
function TrickForcolouringColumns(dict, tmpChart) {
var originalDrawPoints = HC.seriesTypes.column.prototype.drawPoints;
var tmpDict = dict;
var chart = tmpChart;
HC.seriesTypes.column.prototype.drawPoints = function () {
console.log(this);
var merge = Highcharts.merge;
var series = this;
if (series != null) {
var points = series.points;
var i = points.length;
while (i--) {
var candlePoint = points[i];
var attr = candlePoint.pointAttr;
var color = '#33CCFF'; //light blue
var curKey = BuildKey(candlePoint.x);
if (tmpDict[curKey] != null) {
color = '#3366FF'; //dark blue
}
var seriesPointAttr = merge(attr);
//seriesPointAttr[''].fill = color;
//seriesPointAttr.hover.fill = Highcharts.Color(color).brighten(0.3).get();
//seriesPointAttr.select.fill = color;
points[i].pointAttr = seriesPointAttr;
}
originalDrawPoints.call(this);
}
};
}
function BuildKey(x){
//what to do?
var y = Math.round(Math.random());
return y;
}
TrickForcolouringColumns([true, null]);
})(Highcharts);
Highcharts.setOptions({
chart: {
style: {
fontFamily: 'serif'
}
}
});
$('#container').highcharts('StockChart', {
chart: {},
rangeSelector: {
selected: 1
},
series: [{
name: 'USD to EUR',
type:...