public synchronized void plot(double[][] xyValues, Color color) {
		g.setRenderingHint(RenderingHints.KEY_STROKE_CONTROL, RenderingHints.VALUE_STROKE_PURE);
		g.setStroke(new BasicStroke(1, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
		g.setColor(color);
		line.moveTo(xyValues[0][0], xyValues[1][0]);
		for(int i = 0; i < xImageLength; i++){
			if(xyValues[1][i] != Double.MAX_EXPONENT && xyValues[1][i] != Double.MIN_EXPONENT){
			line.lineTo(xyValues[0][i], xyValues[1][i]);
			}else{
				if(xyValues[1][i] == Double.MAX_EXPONENT){
					line.lineTo(xyValues[0][i], Double.MIN_EXPONENT);
				}else if(xyValues[1][i] == Double.MIN_EXPONENT){
					line.lineTo(xyValues[0][i], Double.MAX_EXPONENT);
				}
				g.draw(line);
				line.reset();
				line.moveTo(xyValues[0][i], xyValues[1][i]);
			}
		}
		g.draw(line);
		line.reset();
	}