Probably can be simplified:
k k1 = ListLinePlot@Transpose@Transpose@({Reverse[#[[1]]], #[[2]]} &@Transpose@data);
ListLinePlot[k1,
k /.Ticks -> ({Transpose[({#[[1]], Reverse@#[[2]], #[[3]], #[[4]]} &@
Transpose[Sort@#[[1, 2, 1]]])], #[[1, 2, 2]]} &@
#[[1, 2, 2]]} & @ AbsoluteOptions[k AbsoluteOptions[ListLinePlot@k1, Ticks])]