Summary: In this paper, we propose to employ a characteristic function based non-Gaussianity measure as a one-unit contrast function for independent component analysis. This non-Gaussianity measure is a weighted distance between the characteristic function of a random variable and a Gaussian characteristic function at some adequately chosen sample points. Independent component analysis of an observed random vector is performed by optimizing the above mentioned contrast function (for different units) using a fixed-point algorithm. Moreover, in order to obtain a better separation performance, we employ a mechanism to choose appropriate sample points from an initially selected sample vector. Finally, some computer simulations are presented to demonstrate the validity and effectiveness of the proposed method.