国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

用Java實(shí)現(xiàn)股票走勢(shì)圖

2019-11-18 15:20:33
字體:
供稿:網(wǎng)友

  java的出現(xiàn),給證券行業(yè)發(fā)展帶來了新的機(jī)遇.這里我以java寫的一個(gè)走勢(shì)力圖為例:

package charts;
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
import java.util.*;
import java.lang.*;

public class charts extends Applet {
static int LEN;
static int Xo,Yo; //坐標(biāo)原點(diǎn)(Xo,Yo)
static int X2,Y2; //X軸頂點(diǎn)坐標(biāo)(Xo,Yo)
static final int X1=50,Y1=30; //Y軸頂點(diǎn)坐標(biāo)(Xo,Yo)
static int Yunit,Xunit;
static float Unit;
static String Xstr,Ystr; //接收從Html傳進(jìn)X軸Y軸的數(shù)據(jù)
static int[] Xval;
static int[] Yval;
static float[] Y=new float[5];
static int Xmax,Xmin;
static float Ymax,Ymin;
static int[] Yvalue;
static int[] Xvalue;
public void init() {
//setBackground(Color.gray);
int width=this.getBounds().width;
int height=this.getBounds().height;
setSize(width,height);
Xstr=getParameter("xValue");
Ystr=getParameter("yValue");
Xval=Substr(Xstr);
Yval=Substr(Ystr);
LEN=Xval.length;
Yvalue=new int[LEN];
Xvalue=new int[LEN];
Xo=50;
Yo=height-30;
X2=width-30;
Y2=Yo;
Yunit=(height-100)/4;
Xunit=(width-100)/LEN;
Ymax=getMaxVal(Yval);
Ymin=getMinVal(Yval);
float tempy=((float)Ymax-(float)Ymin)/4;
Y[0]=Ymin; //Y軸坐標(biāo)刻度
Y[1]=Ymin+tempy;
Y[2]=Ymin+tempy*2;
Y[3]=Ymin+tempy*3;
Y[4]=Ymax;
Unit=(float)(Yunit*4)/((float)Ymax-(float)Ymin);
Yvalue=getY(Yunit,tempy,Ymin,Yval);
}
public static int[] getY(int unit,float diff,float ymin,int[] value){
int I=0; //unit=Yunit; diff=temp; ymin=Ymin
int[] result=new int[LEN];
for(I=0;I<LEN;I++)
result[I]=(int)(Yo-((4*unit)/(diff*4))*(value[I]-ymin));
return result;
}
public void paint(Graphics g){
g.setColor(Color.red);//坐標(biāo)原點(diǎn)(30,290)
g.drawLine(Xo,Yo,X1,Y1); //Y軸
int I;
for(I=0;I<5;I++){
g.drawLine(Xo,Yo-Yunit*I,Xo-5,Yo-Yunit*I); //Y
g.drawString(Float.toString(Y[I]),Xo-38,Yo-Yunit*I);
}
g.drawLine(X1,Y1,X1-5,Y1+5); //Y軸左箭頭
g.drawLine(X1,Y1,X1+5,Y1+5); //Y軸右箭頭

g.drawLine(Xo,Yo,X2,Y2); //X軸
//System.out. for(I=0;I<LEN;I++){
g.drawLine(Xo+Xunit*I,Yo,Xo+Xunit*I,Yo+5); //X
//System.out.print((Xo+Xunit*I)+" ");
g.drawString(Integer.toString(Xval[I]),Xo+Xunit*I-6,Yo+20);
}
g.drawLine(X2,Y2,X2-5,Y2-5); //X軸左箭頭
g.drawLine(X2,Y2,X2-5,Y2+5); //X軸右箭頭

g.setColor(Color.black);
g.drawString("Y",X1-20,Y1);
g.drawString("X",X2,Y2+20);
for(I=0;I<LEN-1;I++)
g.drawLine(Xo+Xunit*I,Yvalue[I],Xo+Xunit*(I+1),Yvalue[I+1]);
}
public static int[] Substr(String str){
int I=0;
StringTokenizer st = new StringTokenizer(str,",");
int len=st.countTokens();
int[] val=new int[len];
while(st.hasMoreTokens()) {
val[I]=Integer.parseInt(st.nextToken());
I++;
}
return val;
}
public static int getMaxVal(int[] Maxval){
int I,result;
result=Maxval[0];
for(I=0;I<Maxval.length;I++){
if(result<Maxval[I])
result=Maxval[I];
}
return result;
}
public static int getMinVal(int[] Minval){
int I,result;
result=Minval[0];
for(I=0;I<Minval.length;I++){
if(result>Minval[I])
result=Minval[I];
}
return result;
}
}

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 江安县| 兴安盟| 泸溪县| 兴城市| 金寨县| 彭阳县| 蕉岭县| 新源县| 黄浦区| 景德镇市| 天气| 华安县| 拜城县| 裕民县| 镇原县| 二连浩特市| 六盘水市| 叶城县| 临高县| 郑州市| 乐亭县| 湄潭县| 舒城县| 湖州市| 铜川市| 桦甸市| 浦县| 嘉义县| 深水埗区| 彭阳县| 奇台县| 陇南市| 万盛区| 名山县| 三穗县| 肇庆市| 郎溪县| 龙川县| 读书| 大兴区| 巩留县|