function shuekiGraph(id,filename,asyncMode){var msCommonObj=new msCommonClass;msCommonObj.Start(id,filename,shuekiDraw,asyncMode)}function shuekiDraw(id,xmlData){var min,max,i,jg=new jsGraphics(id),kijyunDate=xmlData.getElementsByTagName("fund")[0].getAttribute("kijyun_date"),lastDay=new Date(kijyunDate.substr(0,4),kijyunDate.substr(4,2)-1,kijyunDate.substr(6,2)),topDay=new Date(kijyunDate.substr(0,4)-2,kijyunDate.substr(4,2)-1,kijyunDate.substr(6,2)),arrData=xmlData.getElementsByTagName("month");if(arrData.length==0)return;var arrF=new Array(4),arrI=new Array(4);for(i=0;i<4;i++){arrF[i]=Number.NEGATIVE_INFINITY;arrI[i]=Number.NEGATIVE_INFINITY}var rp=arrData.length-1,wp=3;while(wp>=0&&rp>=0){arrF[wp]=Number(arrData[rp].getAttribute("fund_return6m"))*100;arrI[wp]=Number(arrData[rp].getAttribute("index_return6m"))*100;wp--;rp--}min=Number.POSITIVE_INFINITY;max=Number.NEGATIVE_INFINITY;for(i=0;i<4;i++){if(arrF[i]!=Number.NEGATIVE_INFINITY){min=Math.min(min,arrF[i]);max=Math.max(max,arrF[i])}if(arrI[i]!=Number.NEGATIVE_INFINITY){min=Math.min(min,arrI[i]);max=Math.max(max,arrI[i])}}if(min>0)min=0;if(max<0)max=0;var kugiri=new shuekiKugiriClass(min,max);if(kugiri.max==0&&kugiri.min==0){kugiri.max=1;kugiri.min=-1;kugiri.step=1}shuekiDrawBackground(jg);shuekiDrawSepa(jg,kugiri.min,kugiri.max,kugiri.step);shuekiDrawGraph(jg,arrF,arrI,kugiri.min,kugiri.max);var arrDays=new Array(5),yyyy=parseInt(kijyunDate.substr(0,4))-2,mm=Number(kijyunDate.substr(4,2));for(i=0;i<5;i++){var m="0"+mm;arrDays[i]=""+yyyy+"/"+m.substr(m.length-2);mm+=6;if(mm>12){mm-=12;yyyy++}}shuekiDrawFrame(jg,kugiri.min,kugiri.max,kugiri.step,arrDays);jg.paint();return}function shuekiDrawGraph(jg,arrF,arrI,min,max){var arrXF=[33,79,124,170],diff=max-min,i,x,y,h,y0;y0=Math.round(162+min*135/diff);for(i=0;i<4;i++){if(arrF[i]!=Number.NEGATIVE_INFINITY){x=arrXF[i];h=parseInt(arrF[i]*135/diff);y=y0;if(h<0)h*=-1;else y=y0-h;if(y<27){h-=27-y;y=27}h=Math.min(162,y+h)-y;if(h>1||h<-1){jg.setColor("#ffab57");jg.fillRect(x,y,12,h);jg.setColor("#000000");jg.drawRect(x,y,12,h)}}if(arrF[i]!=Number.NEGATIVE_INFINITY){x=arrXF[i]+12;h=parseInt(arrI[i]*135/diff);y=y0;if(h<0)h*=-1;else y=y0-h;if(y<27){h-=27-y;y=27}h=Math.min(162,y+h)-y;if(h>1||h<-1){jg.setColor("#40bf40");jg.fillRect(x,y,12,h);jg.setColor("#000000");jg.drawRect(x,y,12,h)}}}}function shuekiKugiriClass(min,max){var arrMul=[1,2,5];this.min=0;this.max=0;this.step;var iMul,step,mul=1;while(true){for(iMul=0;iMul<arrMul.length;iMul++){step=mul*arrMul[iMul];var maxLargeVal=LargeVal(max,step,mul),minLargeVal=LargeVal(-min,step,mul);if(maxLargeVal.scaleCount+minLargeVal.scaleCount<=2){if(maxLargeVal.total==0&&-minLargeVal.total==0){this.max=1;this.min=-1;this.step=1}else{this.min=-minLargeVal.total;this.max=maxLargeVal.total;this.step=step}return}}mul*=10}}function LargeVal(val,step,mul){var amari=val%step,scaleCount=(val-amari)/step;if(amari==0)if(val==0)return {total:val,scaleCount:0};else return {total:val,scaleCount:scaleCount-1};else if(amari<=mul)return {total:step*scaleCount+mul,scaleCount:scaleCount};else return {total:step*scaleCount+step,scaleCount:scaleCount}}function shuekiDrawSepa(jg,min,max,step){var i,y,diff=max-min;jg.setColor("#000000");y0=Math.round(162+min*135/diff);jg.drawLine(18,y0,205,y0);for(i=step;i>=0&&i<=max;i+=step){y=Math.round(y0-i*135/diff);if(Math.abs(y-27)==1)y=27;jg.drawLine(18,y,205,y)}for(i=-step;i<=0&&i>=min;i-=step){y=Math.round(y0-i*135/diff);if(Math.abs(y-162)==1)y=162;jg.drawLine(18,y,205,y)}}function shuekiDrawFrame(jg,min,max,step,arrDays){var i,diff=max-min,y0;jg.setColor("#000000");jg.drawRect(22,27,183,135);jg.drawLine(68,27,68,162);jg.drawLine(114,27,114,162);jg.drawLine(159,27,159,162);jg.setColor("#000000");jg.setFont("arial","9px",Font.PLAIN);jg.drawString("(%)",15,0);y0=Math.round(162+min*135/diff);jg.drawStringRect("0",0,y0-4,18,"right");for(i=step;i>=0&&i<=max;i+=step){y=Math.round(y0-i*135/diff);jg.drawStringRect(""+i,0,y-4,18,"right")}for(i=-step;i<=0&&i>=min;i-=step){y=Math.round(y0-i*135/diff);jg.drawStringRect(""+i,0,y-4,18,"right")}for(i=0;i<5;i++)jg.drawString(arrDays[i],7+46*i,167)}function shuekiDrawBackground(jg){jg.setColor("#fcfccc");jg.fillRect(0,0,228,181)}