Der Spiegel has an excellent interactive map showing how each of Germany’s seven political parties did in each election district this year and in 2009. Angela Merkel’s Christian Democrats (and their Christian Social allies in Bavaria) this year carried nearly all the land area of Germany, while the Social Democrats carried old industrial areas — the Ruhr, Hamburg, Bremen, Hannover. The Left party carried most of East Berlin.
You can see history’s impact when you click on each of the parties’ names and see which are their weak and strong areas. The CDU/CSU is strongest in the parts of Germany that emerged from the religious wars of 1519-1648 as Catholic — the south of Germany and much of the Rhineland, plus Saxony (on the Czech border) in the 1949-89 East Germany. The SPD is strongest in the Protestant areas. The Left party is strongest in the former East Germany, but certainly not in West Berlin; this is a historically Protestant area but many voters here still yearn for something like Communism.