ฉันกำลังพยายามใช้ gnuplot 5.0 เพื่อพล็อตอาร์เรย์ข้อมูล 2 มิติโดยไม่มีระยะขอบหรือเส้นขอบหรือแกน ... เพียงแค่ภาพ 2D (.png หรือ. jpg) ที่แสดงถึงข้อมูลบางอย่าง ฉันต้องการให้แต่ละองค์ประกอบอาร์เรย์สอดคล้องกับหนึ่งพิกเซลในภาพโดยไม่มีการปรับขนาด / การแก้ไขฯลฯ และไม่มีพิกเซลสีขาวพิเศษที่ขอบ
จนถึงตอนนี้เมื่อฉันพยายามตั้งค่าระยะขอบเป็น 0 และแม้กระทั่งการใช้pixels
ธงฉันยังคงมีพิกเซลสีขาวแถวหนึ่งอยู่ที่ขอบด้านขวาและขอบด้านบนของภาพ
ฉันจะได้รับเพียงแค่ไฟล์รูปภาพที่มีการแสดงพิกเซลต่อพิกเซลของอาเรย์ข้อมูลและไม่มีอะไรพิเศษได้อย่างไร
สคริปต์ gnuplot:
#!/usr/bin/gnuplot --persist
set terminal png size 400, 200
set size ratio -1
set lmargin at screen 0
set rmargin at screen 1
set tmargin at screen 0
set bmargin at screen 1
unset colorbox
unset tics
unset xtics
unset ytics
unset border
unset key
set output "pic.png"
plot "T.dat" binary array=400x200 format="%f" with image pixels notitle
ข้อมูลตัวอย่างจาก Fortran 90:
program main
implicit none
integer, parameter :: nx = 400
integer, parameter :: ny = 200
real, dimension (:,:), allocatable :: T
allocate (T(nx,ny))
T(:,:)=0.500
T(2,2)=5.
T(nx-1,ny-1)=5.
T(2,ny-1)=5.
T(nx-1,2)=5.
open(3, file="T.dat", access="stream")
write(3) T(:,:)
close(3)
end program main
x y z
รูปแบบรายการ