Johanna is a generally powerful tank and is more meta right now, so you’re good picking her pretty much any time. She does shine more on maps where waveclear is more powerful. She’s particularly valuable on maps with two close lanes that consistently need to be cleared, like Tomb of the Spider Queen and Dragon Shire.
Diablo has traditionally been more powerful on certain maps. He can absolutely dominate games on maps where teams fight in small corridors such as Cursed Hollow, Infernal Shrines, and Towers of Doom.
Everything being equal, Johanna is the safer pick more often, but Diablo can completely win the game for you, particularly if you are more skilled than your opponents and are reliably taking advantage of their mistakes in positioning.