Look at the demography.
Bhopal, Jhansi, Agra, Gwalior population is heavily dependent on trains. Many of these places have only recently got an Airport and their Air Connectivity is not yet refined.
I have traveled in Nizamuddin Mumbai CSMT Rajdhani through this route, you cannot imagine the number Passengers I've seen boarding at Agra and Gwalior.
We on the other hand have many options...
more... and are heavily dependent upon flights. Even I'm going to Mumbai to catch a Rajdhani to Delhi while my own City Pune has its own dedicated Duronto for Delhi.
You have asked why Chennai Rajdhani or Secunderabad Rajdhani don't fill ?? Answer is flights. Even nowadays Tamilnadu Express and Telangana Express have good amount of seats for intermediate passengers. Look at Pintoo's Kongu Express trip, after Bhopal even AC coaches were mostly empty because passengers of Coimbatore go through flights or take Daily Tamilnadu Express from Chennai. Whereas on the other hand every other train to Bengaluru, Mumbai and Pune get's jam-packed. Karnataka Sampark Kranti gets emptied out and filled at Pune. Only passengers going through not getting down at Pune are Passengers from Jhansi and Bhopal going to Yeswantpur. Why ?? They have faster connection in form of Direct Rajdhani and other Superfast Trains right ??