Thanks @JuanG.
I also found a couple of example on the forum:
[Subplot with multiple y axis - #3 by cobym]
[Can Subplot support multiple y-axes? - #3 by empet]
The first link provided the solution. Rewriting the same code in a slightly different manner did the trick.
from plotly.subplots import make_subplots
import plotly.graph_objects as go
# Create a figure with one subplot and secondary y-axis
fig = make_subplots(rows=1, cols=1)
# Add a trace to the primary y-axis
trace1 = go.Scatter(x=[1, 2, 3], y=[10, 20, 30], name="Primary Y")
# Add a trace to the secondary y-axis (y2)
trace2 = go.Scatter(x=[1, 2, 3], y=[0.1, 0.4, 0.9], name="Secondary Y")
# Add a trace to the tertiary y-axis (y3)
trace3 = go.Scatter(x=[1, 2, 3], y=[100, 200, 300], name="Tertiary" )
fig.append_trace(trace1, row=1, col=1)
fig.append_trace(trace2, row=1, col=1)
fig.append_trace(trace3, row=1, col=1)
fig['data'][0].update(yaxis='y' )
fig['data'][1].update(yaxis='y2')
fig['data'][2].update(yaxis='y3')
print(fig.layout)
# Update layout for the primary and secondary axes
fig.update_layout(
title="Minimal Example with Three Y-Axes",
xaxis=dict(title="Producing Months"),
yaxis=dict(title="Primary Y-Axis", side="left", anchor="x", range=[0,1000]),
yaxis2=dict(title="Secondary Y-Axis", side="left", anchor="free", overlaying="y", range=[0,1], autoshift=True),
yaxis3=dict(title="Tertiary Y-Axis", side="left", anchor="free", overlaying="y", range=[0,500], autoshift=True),
)
# Show the figure
fig.show()