I will give an overview of methods based on random walks on graphs for the analysis of the geometry of graphs and of functions on graphs. The development of these ideas is motivated by several interconnected problems, such as the visualization of large networks in view of human interaction and information extraction, the analysis of large data sets in high-dimensional space and data mining, for machine learning applications and for analysis of dynamical systems with high-dimensional state spaces. I will overview the main ideas on how random walks can be used to find coordinates systems on graphs, discover clusters and subnetworks, as well as decompose a graph and functions on graphs in a multiscale fashion. I will then discuss applications to the study of high-dimensional data sets and machine learning.