Should I use an Image or an OpenGL object to draw special spectrogram?

I want to draw to the screen at pixel accuracy. It is for a special kind of spectrogram.
I can not figure out if it is best to use an Image object or an OpenGL object.
I want the pixels not to be stretched when making the main window bigger.
Any suggestions?

Using an image will be tricky as you’ll have to handle scaling factors and whatnot, and OpenGL is probably a bit overkill.

I’d typically just use a juce::Path and render it using juce::Graphics::fillPath() and/or juce::Graphics::strokePath().