Why does Matlab spectrogram look stripy when windowed input is zero-padded?
Since I don't have your original data, I'm going to give the answer from my intuition. Try Hann window function and 50% overlap and see what happens.
I have tried a human voice signal as input and whether zero-padding is applied doesn't change the results.
% signal = ...
winsize = 512;
win = hann(winsize, 'periodic'); % use hann window instead of rectangular window
shift = winsize/2; % 50% overlap 
nfft = winsize;
% nfft=round(1.5*winsize);
srate = 48e3;
figure;
spectrogram(signal, win, winsize-shift, nfft, srate, 'yaxis');

Here are the results:

Forgive me for the Chinese xlabel and ylabel, they are respectively &quot;Time (s)&quot; and &quot;Frequency (kHz)&quot;, and the colorbar label stands for &quot;Power/Frequency (dB/Hz)&quot;. I don't see any visible difference between the two figures.
In addition, you can use a smaller FFT size. Generally, using such a long FFT size means that you need an extremely high frequency resolution.
$$
\Delta f = \frac{f_s}{\mathrm{NFFT}}
$$
where $\Delta f$ is the frequency resolution, which is 0.0168 Hz when $f_s$ = 78 Hz and NFFT = 4639. While a super high frequency resolution means a super low time resulution with the fact that $\Delta T = 1/ \Delta f$. In your case you only have 10 time sample results.

For the second question, 0 Hz means the direct current (DC) component. Maybe you should add some information about what kind of signal are you analysing.