ಲೇಖನಕ್ಕಾಗಿ ಡೇಟಾ ದೃಶ್ಯೀಕರಣದಲ್ಲಿ ಕೆಲಸ ಮಾಡುವಾಗ, ಎಲ್ಲದರ ಮೇಲೆ ಧನಾತ್ಮಕ ಲೇಬಲ್ಗಳೊಂದಿಗೆ 4 ಅಕ್ಷಗಳನ್ನು ಹೊಂದಿರುವುದು ಅಗತ್ಯವಾಯಿತು.
ಲೇಖನದ ಇತರ ಗ್ರಾಫ್ಗಳಂತೆ, ನಾನು ಬಳಸಲು ನಿರ್ಧರಿಸಿದೆ ಗ್ನುಪ್ಲಾಟ್. ಮೊದಲನೆಯದಾಗಿ, ನಾನು ಅಧಿಕೃತ ವೆಬ್ಸೈಟ್ ಅನ್ನು ನೋಡಿದೆ, ಅಲ್ಲಿ ಅನೇಕ ಉದಾಹರಣೆಗಳಿವೆ. ನಾನು ಸರಿಯಾದದನ್ನು ಕಂಡುಕೊಂಡಾಗ ನನಗೆ ತುಂಬಾ ಸಂತೋಷವಾಯಿತು
ನಾನು ಕೋಡ್ ಅನ್ನು ತ್ವರಿತವಾಗಿ ನಕಲಿಸಿದ್ದೇನೆ ಮತ್ತು ಅದನ್ನು ಓಡಿಸಿದೆ. ನಾನು ದೋಷವನ್ನು ಪಡೆಯುತ್ತೇನೆ. ನಾನು ಅದನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುತ್ತಿದ್ದೇನೆ. ನನ್ನ ಬಳಿ ಹಳೆಯ ಗ್ನುಪ್ಲಾಟ್ ಇದೆ ಎಂದು ತಿಳಿದುಬಂದಿದೆ (Version 5.0 patchlevel 3 last modified 2016-02-21
) ಮತ್ತು ಅವನು ಅದನ್ನು ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ.
ಗ್ನುಪ್ಲಾಟ್ನ ನಮ್ಯತೆಯ ಬಗ್ಗೆ ತಿಳಿದುಕೊಂಡು, ನಾನು ವರ್ಲ್ಡ್ ವೈಡ್ ವೆಬ್ ಅನ್ನು ಹುಡುಕಲು ಪ್ರಾರಂಭಿಸಿದೆ ಮತ್ತು ಸ್ಟಾಕ್ಓವರ್ಫ್ಲೋ ಕುರಿತು ಹಲವಾರು ಸೂಕ್ತವಾದ ಉದಾಹರಣೆಗಳನ್ನು ಕಂಡೆ (
ಇದಲ್ಲದೆ, ಆಜ್ಞೆಗಳೊಂದಿಗಿನ ನನ್ನ ಕುಶಲತೆಯು ಈ ಕೆಳಗಿನವುಗಳಿಗೆ ಕಾರಣವಾಯಿತು:
0) ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ
unset border
1) 4 ಶೂನ್ಯ ಸಾಲುಗಳನ್ನು ರಚಿಸಿ - 2 ಮುಖ್ಯ ಮತ್ತು 2 ಹೆಚ್ಚುವರಿ:
set xzeroaxis
set yzeroaxis
set x2zeroaxis
set y2zeroaxis
ಶೂನ್ಯ ರೇಖೆಗಳ ಬಗ್ಗೆ ಕೆಲವು ಪದಗಳು
2) ಅಕ್ಷಗಳ ಮೇಲೆ ಉಣ್ಣಿಗಳ ಪ್ರದರ್ಶನವನ್ನು ಹೊಂದಿಸಿ:
max = 1.5 # Для гибкости
min = -max
set xtics axis 0,.5,max in scale 0.5,0.25 mirror norotate autojustify offset 0.35
set ytics axis .5,.5,max in scale 0.5,0.25 mirror norotate autojustify
set x2tics axis .5,.5,max in scale 0.5,0.25 mirror norotate autojustify
set y2tics axis .5,.5,max in scale 0.5,0.25 mirror norotate autojustify
ಅಕ್ಷಗಳ ಮೇಲೆ ಉಣ್ಣಿಗಳೊಂದಿಗೆ ಸ್ವಲ್ಪ ಹೆಚ್ಚು ಸೆಟ್ಟಿಂಗ್ಗಳಿವೆ.
axis
- ಉಣ್ಣಿ ಎಲ್ಲಿ ಇರುತ್ತದೆ, ಅಕ್ಷದ ಮೇಲೆ ಅಥವಾ (ಗಡಿ - ಗಡಿಯಲ್ಲಿ).
ಅಕ್ಷಕ್ಕೆ x
, ಇದು ಬಲಕ್ಕೆ ಹೋಗುತ್ತದೆ 0,.5,max
. ಮೊದಲ ಸಂಖ್ಯೆಯು ಕೌಂಟ್ಡೌನ್ನ ಪ್ರಾರಂಭವಾಗಿದೆ, ಎರಡನೆಯದು ಹಂತವಾಗಿದೆ, ಮೂರನೆಯದು ಕೌಂಟ್ಡೌನ್ನ ಅಂತ್ಯವಾಗಿದೆ. ಮೊದಲನೆಯದಕ್ಕೆ 0
, ಮತ್ತು ಉಳಿದವರಿಗೆ 0.5
, ಆದ್ದರಿಂದ ಸೊನ್ನೆಗಳು ಮೂಲದೊಂದಿಗೆ ಮಧ್ಯಪ್ರವೇಶಿಸುವುದಿಲ್ಲ.
ನಿರ್ದೇಶಾಂಕ ಕೇಂದ್ರದಲ್ಲಿ ಸೊನ್ನೆಗಳನ್ನು ಮಿಶ್ರಣ ಮಾಡುವುದು.
ಎಲ್ಲಾ ಮಧ್ಯಂತರಗಳು *tics
ಎಂದು ಕಾನ್ಫಿಗರ್ ಮಾಡಲಾಗಿದೆ 0,.5,max
ಬೆಜ್ offset 0.35
ಗೆ xtics
ಹೊಂದಾಣಿಕೆ scale 0.5,0.25 mirror
ಅಕ್ಷಕ್ಕೆ ನೋಟುಗಳನ್ನು ಸೇರಿಸುತ್ತದೆ. ನೀವು ಸಂಖ್ಯೆಗಳೊಂದಿಗೆ ಆಡಿದರೆ, ಅವುಗಳ ಗಾತ್ರವು ಬದಲಾಗುತ್ತದೆ.
ನಾನು ಅಸ್ಥಿರಗಳನ್ನು ಸಹ ನಮೂದಿಸುತ್ತೇನೆ max, min
, ಅದರ ಸಹಾಯದಿಂದ ನಾನು ಗ್ರಾಫ್ ಅಕ್ಷಗಳ ಗಡಿಗಳನ್ನು ನಿಯಂತ್ರಿಸುತ್ತೇನೆ.
ಉಣ್ಣಿಗಳನ್ನು ಹೊಂದಿಸುವುದರ ಕುರಿತು ಹೆಚ್ಚುವರಿ ಮಾಹಿತಿಯನ್ನು ವಿಭಾಗದಲ್ಲಿನ ದಸ್ತಾವೇಜನ್ನು ಕಾಣಬಹುದು
3) ಅಕ್ಷದ ಶ್ರೇಣಿಗಳನ್ನು ಹೊಂದಿಸಿ:
set xrange [ min : max ]
set yrange [ min : max ]
set x2range [ max : min ]
set y2range [ max : min ]
2 ಅಕ್ಷಗಳು ಪ್ರಾರಂಭವಾಗುತ್ತವೆ ಎಂದು ಇಲ್ಲಿ ಗಮನಿಸಬೇಕು min
ವರ್ಧನೆಗೆ ಮತ್ತು 2 ಅಕ್ಷಗಳು - ಜೊತೆ max
ಕಡಿಮೆ ಮಾಡಲು.
ವಿಭಾಗದಲ್ಲಿ ಹೆಚ್ಚುವರಿ ಮಾಹಿತಿ
4) ಅಕ್ಷಗಳ ಹೆಸರುಗಳನ್ನು ನೀಡಿ ಮತ್ತು ಅವುಗಳನ್ನು ಸುಂದರವಾಗಿ ಇರಿಸಿ:
set label "H_1" at 0, max center offset char 2, 0
set label "H_2" at max+0.1, 0 center offset char -1, 1
set label "H_3" at 0, min center offset char -2, 0
set label "H_4" at min, 0 center offset char 0, 1
5) ಇನ್ಪುಟ್ ಡೇಟಾವನ್ನು ರೂಪಿಸುವುದು
ಪ್ರತಿ ಗ್ರಾಫ್ 2 ಕಾಲಮ್ಗಳನ್ನು ಹೊಂದಿದೆ. ಲೈನ್ ಸಂಖ್ಯೆ - ಅಕ್ಷದ ಸಂಖ್ಯೆ, ಲೂಪ್ ಅನ್ನು ಮುಚ್ಚಲು ಐದನೇ ಸಾಲು. ಬೆಸ ಕಾಲಮ್ - ಸಮನ್ವಯ x
, ಸಹ - y
. ಎಲ್ಲಾ ಬಿಂದುಗಳು ಅಕ್ಷಗಳ ಮೇಲೆ ನೆಲೆಗೊಂಡಿವೆ ಎಂಬ ಅಂಶದಿಂದಾಗಿ, ನಂತರ ಜೋಡಿಯಿಂದ (x, y)
ಒಂದು ಯಾವಾಗಲೂ ಶೂನ್ಯವಾಗಿರುತ್ತದೆ.
ಎಲ್ಲಾ 4 ಅಕ್ಷಗಳು ಧನಾತ್ಮಕವಾಗಿದ್ದರೂ ಸಹ, ಕೆಲವು ಡೇಟಾವನ್ನು ಕೃತಕವಾಗಿ ಋಣಾತ್ಮಕ ಅರ್ಧಕ್ಕೆ ಸರಿಸಲಾಗುತ್ತದೆ ಏಕೆಂದರೆ ಅದು ಮುಖ್ಯ ಅಕ್ಷಗಳ ಮೇಲೆ ಇದೆ x
и y
.
0 1 0 1.21
1 0 1.21 0
0 -1 0 -1.06
-1 0 -1.19 0
0 1 0 1.21 #Дубликат первой точки
ಪರಿಣಾಮವಾಗಿ
ಪೂರ್ಣ ಕೋಡ್
#!/usr/bin/gnuplot -persist
#файл в кодировке cp1251 чтоб русские буквы отображались в eps
set encoding cp1251
set terminal postscript eps enhanced monochrome size 5cm,5cm
set output "./img/eps/fig2.eps"
unset border
set key at -2, 1.5 font 'LiberationSerif, 23'
set key left top samplen 4.5
set xzeroaxis
set yzeroaxis
set x2zeroaxis
set y2zeroaxis
max = 1.5
min = -max
set xtics axis 0,.5,max in scale 0.5,0.25 mirror norotate autojustify offset 0.35 font 'LiberationSerif, 20
set ytics axis .5,.5,max in scale 0.5,0.25 mirror norotate autojustify font 'LiberationSerif, 20
set x2tics axis .5,.5,max in scale 0.5,0.25 mirror norotate autojustify font 'LiberationSerif, 20
set y2tics axis .5,.5,max in scale 0.5,0.25 mirror norotate autojustify font 'LiberationSerif, 20
set xrange [ min : max ]
set yrange [ min : max ]
set x2range [ max : min ]
set y2range [ max : min ]
set label "H_1" at 0, max center offset char 2, 0 font 'LiberationSerif, 23'
set label "H_2" at max+0.1, 0 center offset char -1, 1 font 'LiberationSerif, 23'
set label "H_3" at 0, min center offset char -2, 0 font 'LiberationSerif, 23'
set label "H_4" at min, 0 center offset char 0, 1 font 'LiberationSerif, 23'
set style line 1 linetype 1 pointtype 7 linewidth 3 linecolor black
set style line 2 linetype 2 pointtype 7 linewidth 3 linecolor black
plot 'data.csv' using 1:2 title "1" w lp ls 1 ,
'data.csv' using 3:4 title "2" w lp ls 2
ಮೂಲ: www.habr.com