Re: [問題] Data Export 與一些繪圖上的問題
看板Mathematica作者chungyuandye (養花種魚數月亮賞星星)時間10年前 (2014/10/05 07:57)推噓2(2推 0噓 0→)留言2則, 2人參與討論串2/2 (看更多)
※ 引述《boson5566 (勃鬆)》之銘言:
: 大家好
: 小弟是Mathematica的新手(用的是Mathematic 7)
: 最近因為要跑一些數值法所以才剛接觸不久
: 目前碰到了以下兩個問題 請各位幫忙解答
: 1.請問要怎麼把Mathematica畫完的圖
: 裡面的資料輸出成excel.orign可以處理的檔案
Plot的話,你的圖//InputForm,被Line包起來的就是你要的點
Plot3D的話,你的圖//InputForm,被GraphicsComplex包起來的第一個元素
就是你要的點,其他的則是修飾圖形的資料
其他的ContourPlot、ContourPlot3D...方法不全然相同,但類似
(* 在你的圖裡面的任意level尋找被line包起來的東西,把它命名為pts,再轉輸出*)
pts1=Cases[你的圖,Line[pts__]:>pts,Infinity]
: 目前有看過export這個指令 但是輸出來的用excel打開是橫的
: 而且充滿一堆{}.[].以及英文字母 完全不知道該怎麼處理..
: 目前想到的是自己用Get coordinate抓坐標自己繪圖
: 也有查到用
: data = Table[{x,x^2,x^3,x^4},{x,0,20}];
: Export["data.csv",data]
(* 如果有很多函數,那就會分別存在不同工作表 *)
Export["pts1.xls",pts1]
: 不過他的間隔單位是1 而我需要的間隔單位很小很小(約10^-4)
: 所以也是不知道該怎麼處理
: 2.怎麼把兩張圖畫成一張圖?
: 目前查到SHOW這個指令或是用PLOT畫在一起
: 不過我想要的是兩張圖不同區間可以合在同一張圖上
: 例如A的範圍是0~1 B的範圍是1~2 我想把AB合在一起畫成0~2
: 能有指令的話最好 目前我想到的是把資料抓出來再自己重畫
: 不過資料也抓不出來(崩潰)
: 拜託各位高手救救小弟
資料都抓出來了,ListPlot[{資料1,資料2}]
plot1 = Plot[Sin[x], {x, 0, 2 Pi}]
plot2 = Plot[2 + Sin[x], {x, 0, 2 Pi}]
plot3 = Plot3D[Sin[x + y], {x, 0, 2 Pi}, {y, 0, 2 Pi}]
(* [[1]]只的事第一個元素,把[[1]]想成就是抓第一條件的資料 *)
threesmall1 =
Cases[plot1, Line[threesmall__] :> threesmall, Infinity][[1]];
threesmall2 =
Cases[plot2, Line[threesmall__] :> threesmall, Infinity][[1]];
(* 這邊的[[1]]只的是指抓資料點,其他的修飾圖形的資料就不抓取了 *)
threesmall3d =
Cases[plot3, GraphicsComplex[threesmall3d__] :> threesmall3d,
Infinity][[1]]
ListLinePlot[{threesmall1, threesmall2}]
ListPlot3D[threesmall3d]
ListPlot3D[{#[[1]], #[[2]], Abs[#[[3]]]} & /@ threesmall3d]
--
養花種魚數月亮賞星星
http://chungyuandye.twbbs.org
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.172.104.128
※ 文章網址: http://www.ptt.cc/bbs/Mathematica/M.1412467042.A.B40.html
※ 編輯: chungyuandye (1.172.104.128), 10/05/2014 08:08:55
推
10/05 12:46, , 1F
10/05 12:46, 1F
推
10/08 23:47, , 2F
10/08 23:47, 2F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Mathematica 近期熱門文章
PTT數位生活區 即時熱門文章