The way I read the data sheet, I think that your sensor will put out .5v at 14.7 psi and 4.5 v at 150 psi. That calculates to a range of analog readings from 102 to 920 from 14.7 to 150 psi.
Rather than work out the math your self, I would use the map function to convert the readings to psi. map() does not return a float, so I would work with 10x the psi values and cast the result to a float.
See if this doesn't put the sensor in better agreement with the gage.
int sensorReading;
int psi;
float f_psi;
void setup() {
// initialize serial communications at 9600 bps:
Serial.begin(9600);
}
void loop() {
sensorReading = analogRead(A0); // read the sensor voltage
psi = map(sensorReading, 102, 920, 147, 1500);
f_psi = (float)psi / 10.0;
Serial.println(f_psi, 1);
delay (1000);
}