These videos show how to get the transfer function for simple high and low pass filters and create the Bode' plot with MATLAB.
MATLAB does all the grunt work of creating the transfer function and MATLAB is my favorite tool. I suspect, but haven't proven, that the commands she uses at the end of the second video will also work on Octave.
https://www.youtube.com/watch?v=KDN8W_HaeAY&ab_channel=katkimshow (https://www.youtube.com/watch?v=KDN8W_HaeAY&ab_channel=katkimshow)
https://www.youtube.com/watch?v=bojKlLeuNGE&ab_channel=katkimshow (https://www.youtube.com/watch?v=bojKlLeuNGE&ab_channel=katkimshow)
I tested the commands in Octave and they work after you load the control package
> pkg load control -- this could be added to the script, The control package needs to be installed.
R = 1e3
L = 100e-3
C = 500e-6
figure('Name','Low Pass Filter');
GpRC = tf([1],[R*C 1])
bode(GpRC)
figure('Name','High Pass Filter');
GpRL = tf([L 0],[L R])
bode(GpRL)