In crime analyses, maps showing the degree of risk help police departments to make decisions on operational matters, such as where to patrol or how to deploy police officers. This study statistically models spatial crime data for multiple crime types in order to produce joint crime risk maps. To effectively model and map the spatial crime data, we consider two important characteristics of crime occurrences: the spatial dependence between sites, and the dependence between multiple crime types. We reflect both characteristics in the model simultaneously using a generalized multivariate conditional autoregressive model. As a real-data application, we examine the number of incidents of vehicle theft, larceny, and burglary in 83 census tracts of San Francisco in 2010. Then, we employ a Bayesian approach using a Markov chain Monte Carlo method to estimate the model parameters. Based on the results, we detect the crime hotspots, thus demonstrating the advantage of using a multivariate spatial analysis for crime data.