
#1
Nov1004, 12:52 AM

Emeritus
Sci Advisor
PF Gold
P: 5,198

This didn't generate any responses in the software thread, and since this is for a homework assignment, I have moved my query here. Thanks.
Hello: I have entered data into two lists in Mathematica: centroidEnergy = {1.3485, 1.4780, 1.6176, 1.7820, 1.9123, 2.0274, 2.1635, 2.3163, 2.4213, 2.5191, 2.6515, \ 2.7490, 2.8763, 2.9894, 3.0728, 3.1949, 3.2816, 3.3923, 3.4773, 3.5884, \ 3.6804, 3.7702, 3.8374, 3.9679, 4.0507, 4.1507, 4.2163, 4.3145, 4.4039, \ 4.5056, 4.5089, 4.6440, 4.7331, 4.8497, 4.9290, 5.0019, 5.0862, 5.1815, \ 5.2427, 5.3365, 5.4225, 5.4800} and distanceInAir = {2.0523, 2.0020, 1.9517, 1.8964, 1.8511, 1.8008, 1.7505, 1.7002, 1.6499, 1.5996, 1.5493, 1.4990, 1.4488, 1.3984, 1.3481, 1.2979, 1.2476, 1.1520, 1.0967, 1.0464, 0.99606, 0.95079, 0.89546, 0.84516, 0.79486, 0.74456, 0.69426, 0.64396, 0.59366, 0.54336, 0.49306, 0.44276, 0.39247, 0.34217, 0.29186, 0.24157, 0.19269, 0.14097, 0.090671, 0.040371, 0.000132} I am trying to plot the former vs. the latter. The recommended method I have seen to do so is to Transpose the two lists so that M. creates a list of ordered pairs of corresponding items from each one. Then, ListPlot that. However, I can't get the following command to work: it always gives the ensuing error message: dataToPlot = Transpose[{distanceInAir, centroidEnergy}] Transpose :: nmtx :: the first two levels of the onedimensional list {{2.0523, 2.0020, 1.9517, 1.8964, 1.8511, 1.8008, 1.7505, <<28>> , 0.24157, 0.19269, 0.14097, 0.090671, 0.040371, 0.000132}, {<<1>>}} cannot be transposed. ??? Any ideas on how to simply plot centroidEnergy vs. distanceInAir would be greatly appreciated! Thanks. 



#2
Nov1004, 01:47 AM

P: 291

Try the Thread[] function.
Thread[{{1, 2, 3}, {a, b, c}}] returns {{1, a}, {2, b}, {3, c}} J 



#3
Nov1004, 03:35 AM

Emeritus
Sci Advisor
PF Gold
P: 5,198

Thanks! That actually worked...once I discovered that I had omitted a data point in one of the lists...so one was shorter than the other...grr.
Any idea why the resulting plot in Mathematica would have x and y axes intersecting at some stupid random point instead of at (0,0)? Edit: When I set AxesOrigin > {0,0}, the resulting yaxis has a huge gap in it! Why? Edit2: from the look of things, it's refusing to draw the yaxis below the yvalue of the last data point. That's ridiculous! Any idea how to get around it? 



#4
Nov1004, 04:12 AM

P: 291

Mathematica List Plot
The PlotRange option might help.
ListPlot[{...}, PlotRange>{y0, yf}] J 


Register to reply 
Related Discussions  
Mathematica Log Plot  Math & Science Software  2  
Mathematica newby needs help with plot  Math & Science Software  9  
how do i plot a function of two variables in mathematica?  Math & Science Software  3  
Mathematica 5  Integral Plot  Math & Science Software  0  
Mathematica List Plot  Math & Science Software  2 