# Rotate and translate previously-plotted data

I have the following:

Show[data1, data2, data3,PlotRange -> {All, All}]


where data1, data2 and data3 are of the form Plot[g, {x, 0, 100}, ImageSize -> Large, ....etc.]

How can I both translate and rotate the data that I see in Show for data1, data2 and data3 without modifying the g of the data itself?

The translation part was solved by both @Michael E2 and @MarcoB here: Shift data of the form Plot[g, {x, 0, 100},ImageSize->Large,....etc.]. Here's the code from @Michael E2 that only gives translation:

p1 = p2 = p3 = Plot[Sin[x], {x, 0, 2 Pi}]

Show[
MapAt[Translate[#, {0, 0.1}] &, p1, 1],
MapAt[Translate[#, {0, 0.2}] &, p2, 1],
MapAt[Translate[#, {0, 0.3}] &, p3, 1],
PlotRange -> All
]

• Rotate around which point? You can try the obvious next step from the code you have in your question, i.e. MapAt[Rotate[Translate[#, {0, 0.1}], 20 Degree] &, p2, 1] – MarcoB Jan 13 at 22:45
• @MarcoB, thanks. Yes, rotating for example taking two parts of the curve (as in the previous example). For example if I have a curve that goes from 0 to 100, rotate based on taking two regions of th curve: One for example from 10 to 30 and the other one from say 60 to 70. I hope that clarifies it ! – John Jan 14 at 3:39
• @MarcoB If I do Rotate as suggested it changes the shape of the curve it seems. – John Jan 14 at 3:42