2013-04-18 21 views
1

我有一個矩陣,第一列是時間,第二列是A的位置,第三列是位置B等。我想在同一幅圖中將A,B,...的位置繪製爲時間的函數。在Mathematica中是否有更高效的方法,而不是逐列製作圖,然後通過「顯示」來組合它們?使用表格中的一列作爲x值繪圖,其他列作爲y值

此外,我希望情節有自己的顏色自動選擇彼此不同;爲了讓這個自動化有用,一個圖例是同時自動生成的。如何在Mathematica中做到這一點?

謝謝!

[更新]:克里斯的方法工作得非常好。但是默認的圖例使用了小點,其顏色有點難以辨認;另外,似乎只有4種顏色;在我的情況下,有大約20個y值,使得圖例無效。是否還有其他符號更大,顏色更多(例如,某些灰度或連續變化的顏色)?

回答

1
a = {{{2001, 1, 1}, 2, 3, 4}, 
    {{2002, 1, 1}, 3, 4, 5}, 
    {{2003, 1, 1}, 4, 5, 6}, 
    {{2004, 1, 1}, 5, 6, 7}, 
    {{2005, 1, 1}, 6, 7, 8}}; 

DateListPlot[MapThread[Transpose[{#1, #2}] &, 
    {Table[First /@ a, {[email protected]@[email protected]}], Transpose[Rest /@ a]}], 
Joined -> True, PlotLegends -> {"A", "B", "C"}] 

enter image description here

+0

很好做!謝謝,克里斯 – 2013-04-18 15:17:04

+0

隨着更多的曲線添加,圖例顏色變得不足。我已經更新了這個問題。 – 2013-04-19 00:44:56

相關問題