Bagaimana cara memplot grafik dari nilai file teks? File teks terlihat seperti di bawah ini:
location count1 count2
HZ 100 193
ES 514 289
FP 70 137
BH 31 187
Saya ingin memplot nilai-nilai ini sebagai grafik dalam skrip shell. Dalam nilai sumbu x kolom lokasi dan nilai sumbu y kolom count1 dan count2.
plot "/tmp/temp.txt"
gagal denganBad data on line 1 of file /tmp/temp.txt
. Saya pikir Anda mungkin harus membuat versi file hanya dengan angka, tanpa header baris / kolom. Atau, gunakan sesuatu seperti gnumerik.Jawaban:
Menggunakan file input yang sama (ex.tsv), dan membuat skrip gnuplot untuk mengontrol detail dengan lebih baik
dan gnuploting data:
kita melihat histogram koresponden.
Untuk membuat file png (untuk mengunggah dan tampil di SO) tambahkan 2 baris lagi:
sumber
Solusi yang bekerja untuk gnuplot v5.0:
Input data file
loc.dat
:skrip gnuplot
locations.plt
:set title "Location data"
- judul plot utamaset xlabel "location"
- label pengaturan untukx
sumbuset ylabel "count"
- label pengaturan untuky
sumbuset grid
- menambahkan kisi ke plot(column(0)):2:xtic(1)
- rentang kolom,(column(0))
- karena kolom 1 dalam file input memiliki nilai non-numerik, kita perlu meniru kolom 1st numerik karena gnuplot hanya mengharapkan nilai numerik di dalamnyaw l
- Berarti dengan garis , untuk menggabungkan semua titik data dengan garisPeluncuran interaktif:
Hasil yang diberikan:
sumber
gnuplot> load "locations.plt"
, gnuplot mensyaratkan bahwa,load locations.plt
tidak akan bekerja dan Anda akan mendapatkan "kesalahan internal: operator STRING diterapkan ke variabel tidak terdefinisi atau non-STRING" jika Anda lupa.