IMU SparkFun 9DOF ICM-20948: getting weird measures

Only the rate gyro is calibrated as I described. Follow the link to learn how magnetometers and accelerometers are calibrated.

The raw data type from the sensor is signed integer. Your code is treating the data as unsigned integers.