$(function () { Highcharts.setOptions({global: { useUTC: false}, // http://architect-wat.hatenablog.jp/entry/20130320/1363786174 日本語化ここを参考 lang: { // 言語設定 rangeSelectorZoom: '表示範囲', resetZoom: '表示期間をリセット', resetZoomTitle: '表示期間をリセット', rangeSelectorFrom: '表示期間', rangeSelectorTo: '〜', //printButtonTitle: 'チャートを印刷', printChart : 'チャートを印刷', exportButtonTitle: '画像としてダウンロード', downloadJPEG: 'JPEG画像でダウンロード', downloadPDF: 'PDF文書でダウンロード', downloadPNG: 'PNG画像でダウンロード', downloadSVG: 'SVG形式でダウンロード', months: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'], shortMonths: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'], weekdays: ['日', '月', '火', '水', '木', '金', '土'], numericSymbols: null, // 1000を1kと表示しない, thousandsSep: "," } }); $('#container').highcharts('StockChart', { chart: { type: 'spline', zoomType: 'x', events: { redraw: function () { rdtbl(); }} }, credits: { text: 'SOKUDON with highstock', href: 'https://docs.google.com/spreadsheet/pub?key=0ArIs57u-VlLWdHlaSk1NY2kzcnNFbjg3b2xNaXJUbnc&output=html' }, title: { text: ibe_title }, subtitle: { text: 'グラフ内ドラックで拡大,見出しクリックで表示/非表示' }, rangeSelector: { inputEnabled: $('#container').width() > 480, inputDateFormat: '%B%e日%H時%M分', inputEditDateFormat: '%B%e日%H時%M分', inputBoxWidth: 120, inputDateParser: function (value) { value = value.split(/[月日時分]/); var dddd= Date.UTC(base_year, parseInt(value[0], 10)-1, parseInt(value[1], 10), parseInt(value[2], 10), parseInt(value[3], 10)); if(tosikosi && value[0]==1){ dddd += (Date.UTC(base_year,0,1,0,0)-Date.UTC(base_year-1,0,1,0,0)); } return dddd; }, buttons : [{ //6つまで //type : 'minute', count : 5,text : '5m'}, { type : 'minute', count : 10,text : '10m' }, { //type : 'minute',count : 30,text : '30m' }, { type : 'hour', count : 1, text : '1h' }, { // type : 'hour',count : 4,text : '4h'}, { type : 'hour', count : 8, text : '8h' }, { // type : 'hour', count : 12,text : '12h'},{ type : 'day', count : 1, text : '1d' }, { type : 'day', count : 5, text : '5d' }, { type : 'all', count : 1, text : 'All' }] }, xAxis: { type: 'datetime', dateTimeLabelFormats: { // don't display the dummy year millisecond: '%M分', second: '%M分', minute: '%H時%M分', hour: '%H時', day: '%B%e日', }, title: { text: '日時(month/day hour:minutes)' }, minrange: 1000*60*10 }, yAxis: { title: { text: ibe_point }, plotLines: [{ value: 0, width: 2, color: 'silver' }], min: 0 }, legend: { enabled: true, maxHeight: 100, }, navigator: { xAxis: { dateTimeLabelFormats: { millisecond: '%M分', second: '%M分', minute: '%H時%M分', hour: '%H時', day: '%B%e日', } } }, tooltip: { shared: true, useHTML: true, formatter : function(){ return GETTIMEZ(this); }, }, series: border_data }); var chart = $('#container').highcharts(), $button1 = $('#100'), $button5 = $('#500'), $button12 = $('#1200'), $buttonal = $('#all'); function houji(d){ for(var i=0;i(%p)' //(経過時間有り) ]; //var dtd=1; var table_enable=0; var youbi =['日', '月', '火', '水', '木', '金', '土']; //PM表示を改造 function GETTIMEZ(chart){ var a = chart.x; //a =a -Date.UTC(2014,0,1,9,0)+ibe_kaishi; var k= new Date(a); var jikan= (k.getMonth()+1) +"月"+ (k.getDate()) +"日 "+ youbi[k.getDay()] +" "+ (k.getHours()) +"時" + k.getMinutes() +"分"; var s= ''+jikan+''; for(var i=0;i'+ chart.points[i].series.name +''; s+='' } //'' + //'+ s+='
'+ addc(chart.points[i].y)+' pt
{series.name}{point.y} pt
'; var syoujun=document.getElementById("SHOJUN").checked; if(syoujun){ CSV_VISIBLE(table_enable,chart.x) } return s; } function rdtbl(){ if(table_enable){ CSV_VISIBLE(table_enable); } return false; } function CSV_VISIBLE(JISOKU,pointer){ JISOKU=JISOKU&1; var csv = []; var sj=[]; var chart = $('#container').highcharts(); var series = chart.series[0]; var lm=document.NZ.NM.options[document.NZ.NM.selectedIndex].text var limit =lm.match(/[0-9]+/); var jikan = document.TZ.HM.options[document.TZ.HM.selectedIndex].text; jikan = "^" +jikan +"$"; for (var j = 0,k=0; j < border_data[0].data.length; j++) { if( border_data[0].data[j][1]!=null){ var ll= new Date(border_data[0].data[j][0]); ll = ll.getHours() + ":" + ("0" +ll.getMinutes()).slice(-2); if(ll.match(jikan)){ sj[k]=j; k++; }}} if(sj.length>0){ for (j = 0; j < sj.length; j++) { var extreme=series.xAxis.min ; if(pointer>series.xAxis.min){extreme=pointer;} if(border_data[0].data[sj[j]][0] != undefined && border_data[0].data[sj[j]][0] >= extreme && border_data[0].data[sj[j]][0] <= series.xAxis.max) { csv[j] =""+ Highcharts.dateFormat('%y/%m/%d %H:%M', border_data[0].data[sj[j]][0]) + ''; for (var i = 0; i < chart.series.length-1; i++) { if(chart.series[i].visible){ csv[j] = csv[j] + ""+ addc(border_data[i].data[sj[j]][1]) +""; if(JISOKU){ if(j>0){ csv[j] = csv[j] + ""+ addc(border_data[i].data[sj[j]][1]-border_data[i].data[sj[j-1]][1]) +""; } else{csv[j] = csv[j] + "";} } }}}}} var mktbl = ""; var mkth = "日時"; for (var i = 0; i < chart.series.length-1; i++) { if(chart.series[i].visible){ mkth = mkth + ""+ chart.series[i].name +""; if(JISOKU){ mkth = mkth + "速度"; } }} var syoujun=document.getElementById("SHOJUN").checked; if(syoujun){ csv.sort( function(a,b){ if( a < b ) return -1; if( a > b ) return 1; return 0; }); } else{ csv.sort( function(a,b){ if( a < b ) return 1; if( a > b ) return -1; return 0; }); } if(sj.length"; } mkth = ""+ mkth +""; mktbl= "" + mkth +mktbl + "
"; table_enable=JISOKU+2; document.getElementById("tbl").innerHTML=mktbl; //alert(csv); return false; } //正規でカンマつける function addc(a){ return String(a).replace(/(\d)(?=(\d\d\d)+(?!\d))/g,'$1,'); }