public void plotZCoordinatesele (Graphics2D g2) {

		g2.setFont(new Font("Arial", 20, 12));
		DecimalFormat f = new DecimalFormat("0.#");
		int yInterval=50;
		float points = maxY / 4;
		for (int x = yInterval, j = 1; x < 250; x+=yInterval){
			if(j>3)
				break;
			g2.drawString("-", 146-diff, 100 + x + 24);
			g2.drawString("" + f.format(points * j), 115-diff, 100 + x + 20);
			j++;
		}

		float maxEle = (float) MODTOHAFSD_Utility.findMaximumNumber1(MODTOHAFSD_CalculateValues.input_ele_km);
		maxEle = Math.abs(maxEle);
		float xpoint = 0;
		float prevx = 150;
		float elepoint[] = new float[MODTOHAFSD_CalculateValues.input_n_obs+1];
		float preelepoint[] = new float[MODTOHAFSD_CalculateValues.input_n_obs+1];
		float dis[] = new float[MODTOHAFSD_CalculateValues.input_n_obs+1];
		float predis[] = new float[MODTOHAFSD_CalculateValues.input_n_obs+1];
		float preele = 320 - (float)( ( 25 * Math.abs(MODTOHAFSD_CalculateValues.input_ele_km[1]) / maxEle ) );
		float xpoint1 = 0;
		float zpoint = 0;	

		g2.setColor(Color.RED);
		g2.fill(new Rectangle2D.Float(150-diff, 295, 450+diff+diff , 275 ));
		Color col = Color.YELLOW;
		Color col1 = Color.MAGENTA;

		for (int k = 1; k <= MODTOHAFSD_CalculateValues.input_n_obs; k++) {


			diff = (float) ( MODTOHAFSD_CalculateValues.input_ddx_km / 2);
			diff = (float) (450 * diff / maxX);		
			xpoint = (float) (450 * MODTOHAFSD_CalculateValues.x[k] / maxX);
			if (k == 1){
				GradientPaint gradient = new GradientPaint(10, 10, col, 30, 190, col1, true);
				g2.setPaint(gradient);
				zpoint =(float) (275 * MODTOHAFSD_CalculateValues.o_dep[k] / maxZ);
				g2.fill(new Rectangle2D.Float(150-diff, 295,diff+diff, zpoint ));
				//g2.fill(new Rectangle2D.Float(150+xpoint, 295, diff, zpoint ));
			}
			else{
				if(k<MODTOHAFSD_CalculateValues.input_n_obs) {
					xpoint1 = (float) (450 * MODTOHAFSD_CalculateValues.x[k+1] / maxX);
				}
				zpoint =(float) (275 * MODTOHAFSD_CalculateValues.o_dep[k] / maxZ);
				GradientPaint gradient = new GradientPaint(10, 10, col, 30, 190, col1, true);
				g2.setPaint(gradient);
				g2.fill(new Rectangle2D.Float(150+xpoint-diff ,295,xpoint1-xpoint, zpoint ));
			}
			if(k==MODTOHAFSD_CalculateValues.input_n_obs){
				zpoint =(float) (275 * MODTOHAFSD_CalculateValues.o_dep[k]/ maxZ);
				g2.fill(new Rectangle2D.Float(150+xpoint-diff, 295,diff+diff, zpoint ));
				//g2.fill(new Rectangle2D.Float(150+xpoint-diff ,295,diff, zpoint ));
			}

		}   

		for (int k = 1; k <= MODTOHAFSD_CalculateValues.input_n_obs; k++) {
			g2.setColor(Color.BLACK);
			xpoint = (float) (450 * MODTOHAFSD_CalculateValues.x[k] / maxX);
			dis[k] = xpoint;
			elepoint[k] = 320 - (float) (25 * Math.abs(MODTOHAFSD_CalculateValues.input_ele_km[k]) / maxEle);
			preelepoint[k]= preele;
			predis[k]= prevx;
			g2.draw(new Line2D.Float(prevx, preele, (float)150 + xpoint, elepoint[k]));
			prevx = 150+xpoint;
			preele = elepoint[k];
		}
		for(float i = (float)1.0; i<=25;){
			for (int k = 1; k <= MODTOHAFSD_CalculateValues.input_n_obs; k++) {
				g2.setColor(Color.WHITE);
				g2.draw(new Line2D.Float(predis[k], preelepoint[k]-i, (float)150+dis[k], elepoint[k]-i));
			}
			i=(float) (i+0.5);

		}
		g2.setColor(Color.BLACK);
		g2.drawLine(150, 50 + 20, 150, 550 + 20);
		g2.drawString("DISTANCE(km)", 333, 315);
	}