I have a list of graphics

p1 = Plot[x Sin[x] - 1, {x, -2.5, 2.5}]
p2 = Plot[Evaluate[D[x Sin[x] - 1, x]], {x, -2.5, 2.5},PlotStyle -> Red]
ListNew = {p1, p2};

I can use Show to combine them:


I can also use MapThread if I understand correctly here:

MapThread[f,{x1,x2}] = f[x1,x2]

But I dont understand why using MapThread with Show wont work?


closed as off-topic by b3m2a1, m_goldberg, MarcoB, Bob Hanlon, Alex Trounev Aug 14 at 14:23

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This question arises due to a simple mistake such as a trivial syntax error, incorrect capitalization, spelling mistake, or other typographical error and is unlikely to help any future visitors, or else it is easily found in the documentation." – b3m2a1, m_goldberg, MarcoB, Bob Hanlon, Alex Trounev
If this question can be reworded to fit the rules in the help center, please edit the question.

  • $\begingroup$ You want Apply not MapThread. $\endgroup$ – b3m2a1 Aug 12 at 23:07
  • $\begingroup$ MapThread is for mapping a multivariate function over multiple lists of arguments, not for applying such a function to a sequence of arguments. $\endgroup$ – m_goldberg Aug 13 at 1:25

MapThread does not work the way you believe. Run your actual code:


You get an error message: "Object x1 at position {2,1} in MapThread[f,{x1,x2}] has only 0 of required 1 dimensions." Basically, you are being told that MapThread wants Lists as the elements in the second argument. Your expression x1 is not a List nor is x2, nor is p1 or p2. As stated in the documentation under Possible Issues: "All arguments must be lists of the same length." (Although, as set forth in the documentation, MapThread can also work with Associations).


Not the answer you're looking for? Browse other questions tagged or ask your own question.