Malbim: A Navi On the Run? What Was Yonah's Problem?
Since when do we find Hashem sending a Navi of Yisroel or any Navi for that matter to other nations to tell them to do teshuva, asks the Malbim? He explains that the story of Yonah took place at the time that Hashem wanted to send Sancheirev the King of Ashur and his mighty army to expel the Aseres HaShevatim from Eretz Yisroel. The philosophical difficulty that always arises is how can Hashem punish the Bnei Yisroel for doing aveiros and not listening to the words of the Navi with a tormentor who acts even worse? Where is the fairness?
Therefore Hashem wanted to send Yonah to Ninveh the capital of Ashur to tell them to do teshuva for their evil ways. This way Hashem can show that Ashur as opposed to Bnei Yisroel listened to the Navi and straightened out their ways and therefore are a fitting weapon in the hands of Hashem to punish Bnei Yisroel.
Yonah understood the real reason for his mission and preferred to die for his people rather than be the catalyst for their ultimate exile.