1. A method for predicting traffic, the method comprising: receiving traffic data originating from multiple sources at a mobile device, wherein the received traffic data includes: crowd-sourced data collected passively through a set of other mobile devices, and crowd-sourced data collected actively from a remote user through another set of other mobile devices; receiving user input at an interface of the mobile device, wherein the received user input specifies a preferred route, a time of day, and a preferred type of traffic data; executing instructions stored in memory, wherein execution of the instructions by a processor: filters the received traffic data based on the preferred type of traffic data specified by the received user input, analyzes the filtered traffic data received at a plurality of different times of day to determine recurring traffic speeds associated with the preferred route, wherein a plurality of recurring traffic speeds are determined for the preferred route, and wherein each of the plurality of recurring traffic speeds is associated with a respective time of day, makes a prediction regarding traffic at the specified time of day based on the determined recurring traffic speeds associated with the preferred route and time of day specified by the received user input, and displays a map that includes the predicted traffic information regarding the preferred route at the time of day specified by the received user input, wherein the map is displayed on a screen of the mobile device.