It is thought that Shakespeare turned Macbeth into the villain so as to flatter King James, who was a descendant of Macbeth's rival Banquo. The real, historical Macbeth was quite unlike Shakespeare's version - he reigned over Scotland for 17 mostly peaceful years.