Analog data is compressed by processing certain data from data storage and interpolating data between data points which fall within an acceptable error range. Data points are compressed by modifying or eliminating data depending upon the slope relationship of a stored data point to artificial data points, which are representative of the range of accepted deviations from the original data point.