Why does a DC motor spin when there is no load applied to it?
Your graph is incomplete. 

If we keep increasing the speed the motor will switch from motoring to generating. At a certain shaft speed the armature current will be zero.







simulate this circuit &ndash; Schematic created using CircuitLab

Figure 1. The enhanced speed vs armature current graph.


  When armature current=0, apparently it still spins quite fast. 


No, it is saying that if the shaft is spinning at a certain speed then the armature current will fall to zero. e.g. A DC motor on a bike might draw zero current at 25 kph. Above 25 kph it will feed power back into the battery. 

On a level road the motor might settle down at 20 kph and a certain current as the power in matches wind and rolling resistance. On a slight down-hill the speed will increase through the zero current point and if the bike continues to accelerate the current direction will reverse and go increasingly negative as the speed goes past the rated speed.


  From what I know, a magnetic field causes a mechanical force on a conductor only when there is current going through the conductor. And in this situation there is no current. So why does it spin?


It spins because something else can be driving the motor shaft. This happens in many situations such as lifts, hoists, bikes, cars, trains, etc., where the load on the motor changes sign due to gravity.







simulate this circuit

Figure 2. Speed vs armature current for the bike example.