(* Graphing Demand and Supply Schedules *) Values = {1, 3, 4, 5, 5, 6, 8, 9} z1 = Thread[{Length[Values] - Range[Length[Values]], Values}] ListPlot[z1, PlotJoined -> True] z1down = Thread[{Length[Values] - Range[Length[Values]] + 1, Values}] z2 = Join[z1, z1down] g[{x1_, y1_}, {x2_, y2_}] := y1 > y2 g[{x1_, y1_}, {x2_, y2_}] := y1 == y2 && x1 < x2 z3 = Join[Sort[z2, g], {{Length[Values], 0}}] dd' = ListPlot[z3, PlotJoined -> True] <