Urban public space is not only characterised by the connection of visible spaces, but also featured by the visible functions, thereby forming the different spatial atmosphere that humans can interpret. In this article, public spaces are conceptualised as a set of viewsheds/isovists that are further used to generate visibility graph (VG) of mutual visibility between spatial locations and functional places. By adding land-use locations into the visibility graph, the current Visibility Graph Analysis (VGA) measures in the space syntax model can be extended to form a novel approach to investigate the fine-scaled spatio-functional interactions though public space in the dense built environment. In so doing, a framework called ‘Function Visibility Graph Analysis (FVGA) is introduced, in which a series of measures are introduced to reflect various respects of viable landscape. The public spaces are further grouped to function spaces, for describing the functional identity for urban spaces with reference to the compositions of the visibility for various types of functions. All these measures of the graph are accomplished of comparing location to location within a system, comparing systems with different spatial layouts or land-use patterns. It is shown that FVGA can be effective to assess the feasibility of detail urban design and land-use allocations.