Separate logic and display for forecast