Python plotly surface plot change z axis position

I am trying to make a surface plot with python plotly. So far everything works fine. I would like to change the position of the z axis from the left to the right. I could find a way to do that. Maybe someone out there can help me with that? The picture below shows the plot and the arrow the position the z axis should be.

My code:

powerPlotA06 = go.Figure(data=[go.Surface(z=pVA06['z'],
                x=pVA06['x'],
                y=pVA06['y'],
                cmin=0, cmax=500,
                colorscale=[
                # Let first 10% (0.1) of the values have color rgb(0, 0, 0)
                [0, "rgb(64, 106, 155)"],
                [0.1, "rgb(64, 106, 155)"],

                [0.1, "rgb(157, 64, 62)"],
                [0.2, "rgb(157, 64, 62)"],

                [0.2, "rgb(128, 153, 72)"],
                [0.3, "rgb(128, 153, 72)"],

                [0.3, "rgb(108, 84, 137)"],
                [0.4, "rgb(108, 84, 137)"],

                [0.4, "rgb(60, 139, 161)"],
                [0.5, "rgb(60, 139, 161)"],

                [0.5, "rgb(211, 127, 59)"],
                [0.6, "rgb(211, 127, 59)"],

                [0.6, "rgb(141, 161, 199)"],
                [0.7, "rgb(141, 161, 199)"],

                [0.7, "rgb(201, 142, 140)"],
                [0.8, "rgb(201, 142, 140)"],

                [0.8, "rgb(179, 197, 145)"],
                [0.9, "rgb(179, 197, 145)"],

                [0.9, "rgb(65, 106, 155)"],
                [1.0, "rgb(65, 106, 155)"]],
                colorbar=dict(
                tick0=0,
                dtick=500
                ))])

myticks = [0, 50, 100, 150, 200, 250, 300, 350, 400, 450, 500]

powerPlotA06.update_layout(title='Jahres Lastgang 3D',
                width=1600, height=1000,
                scene_xaxis = dict(dtick=14400000, tickformat="%H:%M:%S",title='Uhrzeit', title_font = {"size": 16}),
                scene_yaxis = dict(dtick='M1', tickformat="%d.%m.", title='Datum', autorange="reversed", title_font = {"size": 16}),
                scene_zaxis = dict(nticks=10, tickwidth=50, range=[0,500], title='elektrische Leistung kW', tickvals=myticks, title_font = {"size": 16}),
                scene = dict(camera=dict(up=dict(x=0, y=0, z=1),
                                center=dict(x=0.75, y=0.75, z=0),
                                eye=dict(x=1.8, y=1.8, z=0.34)), 
                        aspectmode='manual', 
                        aspectratio=dict(x=1, y=2.5, z=1),
                        ))

powerPlotA06.show()

Thank you very much!

1 Like