Semi-supervised learning algorithms make use of labeled and unlabeled samples. A large number of experiments show that the use of unlabeled samples may improve approximation power. However, there is seldom quantitative analysis of approximation power when the number of samples increases. In this paper a semi-supervised learning algorithm is constructed based on diffusion matrices. We establish the approximation order. Our results also illustrate quantitatively that the use of unlabeled samples may reduce the approximation error.