如何畫出會動的曲線圖?作圖技術進階之必備技能

2021-02-19 科研充電寶

 點擊上方「科研充電寶」,可以添加關注。 

 

畫圖是理工科工作者的必備技能,以前3M君給大家總結過畫圖常用軟體:你一定要知道的十款主流畫圖軟體,淡定的工作從畫出高品格圖片開始 

 

也許你已能用它們熟練地畫出美美的tif,jpg,bmp或者emf等格式的圖片。

確實,以此用於發論文或寫結題報告都應該已經夠用了。

 

但是別忘了:無論畢業以後是繼續學術、還是去企業上班,都可能會遇到各種需要做報告的情況。

比如畢業答辯、比如部門總結匯報、比如招標投標競爭……

 

這時候,如果能在做報告的PPT裡面插入這樣一副圖:(各參數隨時間的演化)

 

或者這樣的動圖:(隨時間的增加,兩根曲線或多根曲線的交點變化情況)

 

或者這樣:

是不是瞬間感覺自己的報告高大上起來?

 

沒錯,看到你秀出來會動的曲線圖之後,慧眼識才的領導眼前一亮、直接嘴動點讚、稱許滿滿;中意了很久的男神女神,投來了崇拜和火辣的眼神;遠處曾經囂張的競爭對手一臉的失落,自嘆技不如人在牆角默默流淚。


要的就是這種碾壓的效果。(ps, 以上情景純屬歪歪,若無雷同,概不負責…)

 

效果好是好,可問題是:

(1) 用什麼方法能畫出這樣的圖?

(2) 畫這種圖會不會很麻煩?

 

麻不麻煩取決於你用什麼樣的工具。

 

比如,如果打算採用Matlab,雖然用它自帶的諸如movie2avi等函數也可以實現,但是效果並不見得很好。

 

再比如,如果打算用Flash做動畫,那麼就是高射炮打蚊子。

 

這裡,隆重推薦今天的主角——gnuplot。

 

1. gnuplot的基本概念

把gnuplot看成gunplot的童鞋,你閱讀速度有點略快啊。也許你最近有點焦慮、煩悶?別著急,一切都會好起來的。

 

gnuplot畫出來的靜態圖長這樣:

 

gnuplot是一個免費軟體,可以在window,linux,mac等系統下使用。

 

它使用交互式介面,可以繪製數學函數2D或者3D圖形,也可以從純文字檔讀入數據、繪製統計圖表等等,還包含數學計算、擬合等功能。

 

對於用慣了滑鼠的童鞋而已,這裡可能有個壞消息:gnuplot是基於命令行的交互式繪圖軟體。

 

打開一個終端,輸入gnuplot,隨著程序啟動,會出現下面的信息:(如果是在Windows 電腦上,雙擊gnuplot.exe 後會自動打開一個命令行窗口)

 

不過不用太慌張,零基礎的童鞋對照教程,大概只用不到半天的時間就能學會(教程在後面會提到)。

 

2. 簡單的例子

採用gnuplot畫動態曲線圖的原理是:多次畫圖並把所有圖片壓縮成一個gif動畫。具體可使用reread命令或者do for命令。

 

下面是一些動圖的例子和代碼,其它簡單的曲線可以此類推:

(1) 隨時間衰減的分布曲線圖 

set term gif animateoptimize delay 2 size 480,360

set output 'movie.gif'

 

do for [i = 0:400 ] {

   t=i*0.02

   plot sqrt(1/(1+t*t))*exp(-(x-t)**2/(1+t*t)) lw 2

   }

 

set out

set terminal wxt enhanced

(2) 等高線及其二維投影隨時間變化圖

#set term gif animate optimize delay 10 size 480,480

#set output 'movie.gif'

 

set pm3d at b

set xr[-5:10]

set yr[-5:10]

set zr[0:1]

set cbr[0:1]

set isosamples 50

 

dofor [i = 0:50 ] {

  t=i*0.05

  splot sqrt(1/(1+t*t))*exp(-(x-t)**2/(1+t*t))*sqrt(1/(1+t*t))*exp(-(y-2*t)**2/(1+t*t))

  }

 

#set out

#set terminal wxt enhanced

 

(3) 小行星軌跡圖

#set term gif animate optimizedelay 5 size 960,720

#set output 'movie.gif'

 

set param

set size ratio -1

set samples 10000

 

e = 1

omega=0.1

 

set tr[1:600]

do for [i = 1:200 ] {  

   plot e*cos(omega*t)/sqrt(t), sin(omega*t)/sqrt(t)

   set label 1 pointpt 7 ps 3  at e*cos(omega*i*3)/sqrt(i*3),sin(omega*i*3)/sqrt(i*3)

   }

 

#set out

#set terminal wxt enhanced

(4) 兩顆行星互相纏繞,最後墜毀在一起 

set param

set samples 10000

set tr[0.01:1]

imax=100

tmax=20e0*pi

ht=tmax/real(imax)

 

#set term gif animate optimizedelay 6 size 600,600 

#set output 'orbit.gif'

 

do for [i=1:imax] {

   th(t,i)=t*real(i)*ht

   plot 10e0*sin(th(t,i))/th(t,i),10e0*cos(th(t,i))/th(t,i) , \

   10e0*sin(th(t,i)-pi)/th(t,i),10e0*cos(th(t,i)-pi)/th(t,i) lt 1 lc 2

}

 

#set out

#set terminal wxt enhanced

 

3. 複雜的例子

除了上面正經的動態曲線圖,gnuplot還可以用來幹一些不正經的事情。比如:

(1) 巫婆帶著烏鴉海上飛

 (2) 超級馬裡奧從洞裡鑽出來

(3) 電磁炮

 

(4) 時鐘

(5) 騎摩託車上下坡

 

(6) 跳舞的星星

 

看到這裡,是不是覺得這小軟體還有那麼點意思?教程、軟體、以及例子,可在公眾號對話框界面回復gnuplot獲取。

 

畫動態曲線圖的技術,你值得擁有。

 

(END)

1論文寫作

論文查重:防止被查重系統誤傷的幾個注意事項

研究生第一篇學術論文常犯問題總結

寫論文和報告容易犯的低級錯誤
論文寫作應該注意的八個細節
SCI投稿全過程信件模板
發表SCI論文有哪些實用工具?

2實用妙招

編輯公式效率太低?來看MathType的重要技巧
如何把圖片格式的Pdf轉化為可編輯的Word?

如何使用Matlab將其畫出的圖片,直接生成PPT?

21個最出名最好用的免費電子書下載網站

搜不到專業的資料、文獻和數據?用這些網站試試

Google學術網址打不開如何愉快地科研?

3作圖技巧

你一定要知道的十款主流畫圖軟體

如何把別人論文中的曲線圖,自動轉化為數據點?

高級版:如何從別人論文的曲線圖中獲取數據點?

如何在橫縱坐標、標題上顯示公式或特殊符號?
如何自動裁剪掉圖像多餘的白邊和坐標系邊框?
Matlab導出高清圖片的正確方法

4編程技巧

最常用的10個Matlab快捷鍵
最值得學習的Matlab參考書有哪些?
如何只用一個小時實現Matlab的快速入門?
媲美Matlab的神器——Python語言的十本入門經典
Matlab數學建模算法全收錄,數學建模比賽必備

Matlab中提高m文件執行效率的小技巧

5技術宅

買西瓜的高級玩法,用好你的智慧型手機
家裡沒人怎麼防火防盜?裝上這段自動看家程序
半夜看小說傷眼睛怎麼辦?
放學快走,你的電腦在實驗室自己喊啪嗒!
如何利用普通計算器求解高次方程的解

手機還能幹這事?以後再也不擔心忘帶雷射筆了

回復「熱門」查看更多信息

3M君,清華博士一枚,不定時po一些科研乾貨、論文寫作中的經驗教訓、作圖技巧、技術宅和好玩的東西。喜歡這篇推送的話,歡迎點讚、評論和轉發哦~

相關焦點

  • 來,畫一張你的人生曲線圖
    X軸起點可以是你的出生年份,原點即是起點;如果以世紀起點作原點,那人生第一個軌跡點就對應畫在相應年份處。麻煩之處在於,Y軸對應點(或稱高度值)如何確定?籠統地說,這個值也就是人生價值的「值」。這個「值」應該以什麼為標準?人生價值本沒有什麼絕對「標準」,因為人的追求不同,價值觀不同,自我評價跟他人評價結果有可能存在巨大差異。
  • 統計數據必備:直方圖,概率密度函數,累積分布函數EXCEL作圖實例
    不管你是什麼學科,只要能接觸到數據,在學習工作中總會有一些用到直方圖、概率密度函數、累積分布函數曲線圖的地方,下面手把手教大家在Excel中製作直方圖
  • 如何用Excel畫順眼的曲線圖
    本篇文章位置:論文寫作-->技巧今天分享一下我用Excel畫曲線圖的方法。
  • Excel函數進階必備的思維和套路有哪些?
    通過一個簡單的案例,我們來看看函數進階必備的一些套路和處理思維
  • 如何利用Excel繪製半對數曲線圖
    為了說明作圖的原理,作一條平行於橫坐標軸的對數數值線。對數坐標系兩個軸(x和y)都是對數標度的坐標軸,即每個軸的標度都是按上面所述的原則作成的。作為一個長期效力於公路試驗檢測人員來說,顆粒分析試驗(篩分法)大家最為熟悉不過了、數據的運算大家也能計算,無非就是不知道怎麼利用Excel來繪製半對數曲線圖。今天小編就給大家說說怎麼利用Excel來繪製半對數曲線圖。
  • 只需九步,薪資曲線就畫出來啦!
    曾經和HR哥系統地學習過薪酬相關理論及技能,對於薪酬管理無論是實操還是理論都具備了相當的水平。一日,王經理找到夢娜,和夢娜聊起薪酬管理。夢娜專業系統,對答如流,王經理非常滿意,對夢娜說:想不到,你的專業知識和能力提升這麼快啊!今天找你來,是因為公司馬上要引入管理顧問公司對薪酬進行全面規範,想讓你來負責這個項目。夢娜非常開心,欣然受命。
  • 施工角度簡析如何畫好管道單線圖
    單線圖的繪製是每個技術人員必備的技能之一,但隨著設計軟體的不斷更新及發展,施工初始階段設計已為施工單位提供了較為完善的單線圖。
  • 用EXCEL來搞藝術之動態曲線圖
    首先,這是一個曲線圖,如果把每種材料的價格都同時表現,那整個圖表將極為混亂。那就需要設置一個下拉框,來根據需要選擇需要展現的材料。其次,對於時間選擇,採取兩個進度條分別設置。時間跨度用來設置開始時間,時間寬度用來設置時間的跨度。再次,設置控制項進行勾選,來增加價格變動和價格變動幅度兩個參數。這兩個選項配置成柱形圖,實現不同元素的不同呈現,更加清晰。
  • Excel作圖攻略
    Origin是數據作圖的常用工具,但是它也不是萬能的,而Excel不但能夠處理各式數據,還能較好地填補Origin作圖的不足。
  • 作圖詳解南丁格爾玫瑰圖(第一輯)
    今天我們就來介紹如何用EXCEL製作南丁格爾玫瑰圖。因此在這一啟示下,本領域技術人員很容易想到採用多環圖為原型,通過使一些圓弧不填充顏色,來實現南丁格爾玫瑰圖的效果。STEP 1 準備數據STEP 4 計算環形填充的數據假設申請量為97的技術分支的花瓣是最長的,佔滿20個圓弧,那麼其他的技術分支的花瓣應當佔滿的圓弧的數量=該技術分支的申請量/(97/20),然後再將上述數據取整
  • 20G,1000個Excel黃金技巧,Excel全方位技能視頻教程大禮包免費派送啦!
    三大Excel禮包強勢來襲數據分析+公式強化+進階技巧職場必備Excel黃金技能Excel全方位技能視頻教程大禮包這年頭Excel玩不溜你都不好意思和人家打招掌握必備Excel黃金技巧刻不容緩福利收好分分鐘解開技術封印
  • Excel圖表之道
    地點:北京海澱區西三環丹龍大廈費用:2000/1600(憑學生證優惠)著有職場技能類暢銷圖書《Excel圖表之道》、《用地圖說話》,國內某通信運營商資深IT項目經理,長期負責數據倉庫和商業智能項目的建設工作,具有豐富的數據分析實踐經驗。
  • 函數作圖 – 利用函數性質(2)
    簡而言之,函數作圖的過程可以用「觀全局-定轉折-尋捷徑」來概括。所謂觀全局,就是在整個定義域範圍內,把握函數值變化的整體特徵;定轉折,就是確定函數的特殊點或特殊線,而函數的特徵在這些轉折點會發生一些變化,例如過零點,在過零點的左側或右側,函數值從負到正或者從正到負;尋捷徑,就是判斷函數是否具有對稱性或周期性等,簡化函數作圖的過程。
  • 敏捷商業分析師必備技能 - Kano Analysis
    不知大家發現沒,這麼多工具和技能分享到現在,越是簡單的工具越在對一些偏底層的問題發問:誰是客戶?我們給客戶提供什麼價值?Kano Analysis可以用來幫助我們了解哪些產品特性或者質量等需求將被證明是重要市場差異點,並可以提升客戶滿意度。
  • 探槽作圖基本步驟
    槽壁採用自然展開法繪製,槽底採用規整法⑴首先根據探槽的長度,高差等計劃好圖名、比例尺、基線起點、槽壁、槽底、責任表及樣品分析結果表在座標紙上的相應位置,要求布局合理,整齊美觀。使用統一圖例。⑶測手測量並報出各地質要素特徵點的座標位置①槽壁:各導線起點讀數均為0m,設各點鉛垂投影到基線上的位置為Xm,即皮尺上的讀數,該點距基線的鉛垂距離為Ym(分為基線上和基線下,用鋼捲尺丈量出數據),作圖員可據此將各要素點位置投到圖上,並分類連接成圖。
  • 【辦公幫手】怎樣使用excel畫曲線圖
    這個功能能夠根據數據繪製出不同類型的圖,如果對曲線圖要求不高可以用excel代替matlab來畫數據分析曲線圖。(注意曲線是對比用的)方法/步驟:1、首先在excel表格中添加數據,如下圖所示。
  • 手把手教你輕輕鬆鬆繪圖:Excel作圖系列之 折線圖
    圖文撰寫 | Janeey Wang科研論文中,圖都標記為Figure或Fig,本公眾號的主旨是為大家講解科研過程中的作圖步驟同時,我們還將以最新發表、或各學科Top期刊文章中的結果圖為例,給大家逐一講解如何作圖(繪圖)!
  • Tester 之 必備能力!
    最近老徐感觸很多;今晚不聊技術,聊測試職業必備能力~需要具備什麼樣的能力,才能在測試職業混的好,能更快速成長
  • 用excel表格畫的畫,令人嘆服!
    看到這麼美的畫,首先你會想到是用是什麼畫的?
  • 10分鐘快速上手MATLAB,畫出你的第一個圖形!
    今天我來帶大家10分鐘速成MATLAB,畫出你的第一個MATLAB曲線圖!寫在前面:MATLAB對大多數人來說就是畫圖工具,為了學個工具花費太多時間,老白覺得不值得。我們只所以覺得MATLAB難學,很大程度是上手得先學好多理論,MATLAB變量、運算符、函數等等,有的同學就難受在理論上了。