గ్నుప్లాట్ 5.0. 4 అక్షం మీద DIY స్పైడర్‌ప్లాట్

గ్నుప్లాట్ 5.0. 4 అక్షం మీద DIY స్పైడర్‌ప్లాట్
కథనం కోసం డేటా విజువలైజేషన్‌పై పని చేస్తున్నప్పుడు, అన్నింటిపై సానుకూల లేబుల్‌లతో 4 అక్షాలు ఉండటం అవసరం.

వ్యాసంలోని ఇతర గ్రాఫ్‌ల మాదిరిగానే, నేను ఉపయోగించాలని నిర్ణయించుకున్నాను gnuplot. అన్నింటిలో మొదటిది, నేను అధికారిక వెబ్‌సైట్‌ను చూశాను, అక్కడ చాలా ఉదాహరణలు ఉన్నాయి. సరైనది దొరికినప్పుడు చాలా సంతోషించాను ఒక ఉదాహరణ (నేను ఫైల్‌తో కొంచెం పని చేస్తాను మరియు అది అందంగా ఉంటుంది, నేను అనుకున్నాను).
గ్నుప్లాట్ 5.0. 4 అక్షం మీద DIY స్పైడర్‌ప్లాట్
నేను త్వరగా కోడ్‌ని కాపీ చేసి రన్ చేసాను. నాకు లోపం వస్తుంది. నేను దానిని గుర్తించాను. నాకు పాత గ్నోప్లాట్ ఉందని తేలింది (Version 5.0 patchlevel 3 last modified 2016-02-21) మరియు అతను అలా చేయలేడు.

గ్నప్లాట్ యొక్క సౌలభ్యం గురించి తెలుసుకుని, నేను వరల్డ్ వైడ్ వెబ్‌ను శోధించడం ప్రారంభించాను మరియు స్టాక్‌ఓవర్‌ఫ్లో (స్టాక్‌ఓవర్‌ఫ్లో) అనేక సరైన ఉదాహరణలను చూశాను.గ్నుప్లాట్‌తో స్పైడర్ ప్లాట్‌పై డబుల్ x-యాక్సిస్ и గ్నూప్లాట్‌లో స్పైడర్ ప్లాట్‌ను ఎలా సృష్టించాలి?) మరియు గితుబ్ (gnuplot-radarchart) అవి ప్రారంభ బిందువుగా మారాయి.

ఇంకా, ఆదేశాలతో నా మానిప్యులేషన్‌లు క్రింది వాటికి దారితీశాయి:

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, కాబట్టి సున్నాలు మూలానికి అంతరాయం కలిగించవు.

గ్నుప్లాట్ 5.0. 4 అక్షం మీద DIY స్పైడర్‌ప్లాట్
గ్నుప్లాట్ 5.0. 4 అక్షం మీద DIY స్పైడర్‌ప్లాట్

కోఆర్డినేట్ సెంటర్‌లో సున్నాలను కలపడం.
అన్ని విరామాలు *tics గా కాన్ఫిగర్ చేయబడింది 0,.5,max
లేకుండా offset 0.35 కోసం xtics

సర్దుబాటు scale 0.5,0.25 mirror అక్షానికి గీతలను జోడిస్తుంది. మీరు సంఖ్యలతో ఆడితే, వాటి పరిమాణం మారుతుంది.
నేను వేరియబుల్స్ కూడా నమోదు చేస్తాను max, min, దీని సహాయంతో నేను గ్రాఫ్ అక్షాల సరిహద్దులను నియంత్రిస్తాను.
సెక్షన్‌లోని డాక్యుమెంటేషన్‌లో టిక్‌లను సెట్ చేయడంపై అదనపు సమాచారం చూడవచ్చు Xtics.

3) అక్ష పరిధులను సెటప్ చేయండి:

set xrange  [ min : max ] 
set yrange  [ min : max ]
set x2range [ max : min ]
set y2range [ max : min ]

2 అక్షాలు మొదలవుతాయని ఇక్కడ గమనించాలి min మాగ్నిఫికేషన్ మరియు 2 అక్షాలు కోసం - తో max తగ్గించడానికి.
విభాగంలో అదనపు సమాచారం Xrange.

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 #Дубликат первой точки

ఫలితంగా
గ్నుప్లాట్ 5.0. 4 అక్షం మీద DIY స్పైడర్‌ప్లాట్
పూర్తి కోడ్

#!/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

ఒక వ్యాఖ్యను జోడించండి