日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Ubuntu环境下使用gnuplot由数据表绘制曲线图

發布時間:2023/11/27 生活经验 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ubuntu环境下使用gnuplot由数据表绘制曲线图 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在ubuntu中安裝NS-3之后,編譯DASH仿真器Simulation,在由自適應算法得到仿真結果后可以直接導出數據表,包含仿真時間、每次跳轉的視頻切片的BitRate等等,這時候可以在Linux環境下安裝Gnuplot繪圖工具:

sudo apt-get install gnuplot?

執行gnuplot的test:

>gnuplot
> set terminal png size 1080,720                   
> set output "test.png"
> test

得到檢測圖:

NS-3仿真器進行DASH算法仿真得到數據表dash1.dat,dash2.dat兩個數據表(或者更多,與畫兩個折線一樣的過程),數據表的格式如圖所示:

在數據表所在目錄下執行gnuplot:

>gnuplot   #使用gnuplot繪圖
>set terminal png size 1080,720   #建立1080*720空白圖片
>set title "Case:Bandwidth=1Mbps"   #注明曲線圖標題
>set output "Simulatiaon.png"   #設置文件名
>set xlabel "Simulation time(s)"   #設置X軸名稱
>set ylabel "BitRate(Mbps)"   #設置y軸名稱
>set yrange [0:1200000]
>set ytics ("0" 0,"0.2" 200000,"0.4" 400000,"0.6" 600000,"0.8" 800000,"1.0" 1000000,"1.2" 1200000)   #設置y軸范圍、刻度參數
>plot "dash1.dat" using 1:7 w lp pt 5 title "dash1","dash2.dat" using 1:7 w lp pt 7 title "dash2" 
#分別取dash1和dash2數據表的第1和第7列分別作為x,y變量繪制曲線
>quit   #退出軟件

在以上代碼中,“set ytics ("0" 0,"0.2" 200000,"0.4" 400000,"0.6" 600000,"0.8" 800000,"1.0" 1000000,"1.2" 1200000)” ??set ytics ()中引號內容每個逗號區分一個刻度,此處每個刻度有三個設置參數:顯示字符、刻度位置、刻度等級,其中刻度等級省略則默認為0(即顯示該刻度)。

上面的代碼執行出來可以得到由gnuplot繪制的折線圖。

?

同理,由數據表dash1.dat,dash2.dat和dash3.dat三個數據表可以畫出三條折線同圖的情況:

挨個執行gnuplot繪圖命令比較繁瑣,如果作得圖很多,重復輸入命令則顯得麻煩。可以使用腳本文件,每次只要修改一下腳本文件中的基本參數(繪圖的標題等等),就可以省去不斷輸入命令的繁瑣。gnuplot執行腳本的格式為:

gnuplot file #file為shell腳本文件

譬如,我們可以編寫一個plot1腳本文件(腳本文件與數據表.dat文件置于同一個目錄下)

#!/bin/bash
set terminal pngcairo size 1080,720 lw 2 font "AR PL UKai CN,14"
#建立空白圖片,設置字體
set title "腳本繪圖-fupenzi"
#注明標題
set output "dash1.png"
#設置文件名
set xlabel "仿真時間(單位:s)"
#設置X軸名稱
set ylabel "碼率(單位:Mbps)"
#設置y軸名稱
set yrange [0:1200000]
#設置y軸范圍
set ytics ("0" 0,"" 100000,"0.2" 200000,"" 300000,"0.4" 400000,"" 500000,"0.6" 600000,"" 700000,"0.8" 800000,"" 900000,"1.0" 1000000,"" 1100000,"1.2" 1200000)
#設置y軸刻度參數
set grid
#設置網格線
plot "dash1.dat" using 1:7 w lp pt 5 title "切片比特率"
#分別取數據表1和7列作為x,y變量繪制曲線
quit
#退出軟件

執行結果:

?

?

?

總結

以上是生活随笔為你收集整理的Ubuntu环境下使用gnuplot由数据表绘制曲线图的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。