You should plot the absolute value of your output from spectrogram or stft. Maybe even the log, or 10*log10 too (but I don't recall exactly, you'll have to look up the documentation). Basically, when you call those functions with outputs, try and make the plot match the one you get when you call the functions without outputs.
Your spectral and temporal resolution are very different from the first figure. That paper is doing a time-frequency analysis over ~ 4 seconds and 25 Hz. You are looking at ~150 ms and 500 Hz. You can look at this tutorial (with video) on how time window and frequency resolution trade-off with each other.