Re: pylväskuvioon numeroita sullomaan

[vastaus aiempaan viestiin]

Kirjoittaja: Kimmo Vehkalahti
Sähköposti:    -
Päiväys: 3.3.2004 11:40

Tämä on tyypillinen tehtävä, jossa ratkaisua on
haettava paloittelemalla tehtävä osiin, tekemällä
kaksi tai useampaa kuvaa ja yhdistämällä ne.

Ja kuten useimmiten, mahdollisia ratkaisuja on
useita. Tässä yksi lisää:

Ensin pieni datan muokkaus; käsittelyjen otsikko
("treatm") paikalleen, rivitunnusten selkiytys:

Atreatm yield      loss   weeds  t
*0        60000.00  0.01  204.0  1
*Chem     97312.50  0.01    6.0  2
*FW       80281.25  1.3    24.3  3
*FW+HH    94718.75  4.8     6.6  4
*NH       98093.75 10.2    15.4  5
*NH+HH   102718.75 10.0     4.2  6
*
*DATA PETRI A+1,A+6,A

Simppeli versio GPLOTilla, kolmen kuvan kerrostus.
Eka kuva on selvä, tavanomainen pystypylväskuva.
Y-akselille on haettu sopiva asteikko, koska sitä
tarvitaan myöhemmin myös toisessa kuvassa.

GPLOT PETRI / MASK=AA--
TYPE=VBAR
LEGEND=-
YSCALE=0(30000)120000
HEADER=Torjuntakokeen_tulokset

INFILE=NULL
OUTFILE=A
....................

Oletuksena 0-arvot eivät tule näkyviin VALUES-
täsmennyksellä, mutta pienellä datan muokkauksella
(0.01:n lisäys kahteen ensimmäiseen havaintoon)
saadaan "0.0"-arvotkin näkyviin - mikäli halutaan.
MINVALUE-täsmennyksellä saadaan pylväät poistettua
näkyvistä (kokeile ilman INFILE-täsmennystä!).

GPLOT PETRI / MASK=A-A-
TYPE=VBAR
LEGEND=-
VALUES=##.#,0.5
MINVALUE=11
HEADER=
FRAME=0

INFILE=A
OUTFILE=A
.........................

Viimeinen toive ei onnistu pylväskuvioiden avulla
(mikäli nyt ymmärsin toiveen likimainkaan oikein),
mutta yleensä hajontakuvien puolelta löytyy eväitä
mihin tahansa tilanteisiin, niin nytkin. Dataan on
lisätty tätä varten käsittelyille juokseva numerointi.
Sitten vain piirretään se sadon kanssa vastakkain
käyttäen sopivaa X-asteikkoa (joka häivytetään taas
näkyvistä FRAME-täsmennyksellä). Kun pisteet osuvat
riittävän hyvin kohdakkoin pylväiden kanssa (kokeilu
tai pari aiempien kuvien kanssa päällekkäin), pannaan
pisteen tilalle rikkakasvien määrää kuvaavan muuttujan
nimi (weeds). Näin arvot tulevat haluttuihin kohtiin.
Täsmennyksellä LAG voidaan hienosäätää ao. lukuarvojen
sijaintia kuvassa.

XSCALE=0.5:?_,1(1)6,6.7:?_
GPLOT PETRI t,yield
YSCALE=0(30000)120000
LAG=0,-5000
POINT=weeds
FRAME=0
HEADER=
XLABEL=

INFILE=A
OUTFILE=Tulokset
......................................

Em. kaavioista saa vähällä vaivalla PostScript-esityksen
(tässä pieniä variaatioita samalla):

PLOT PETRI / MASK=AA-- DEVICE=PS,1.PS
TYPE=VBAR YLABEL=sato  LEGEND=-
GAP=0.3,0.3,0.3        FRAME=5
YSCALE=0(20000)120000
HEADER=[SwissB(21)],____________Torjuntakokeen_tulokset

SHADING=-1 FILL(-1)=0.8,0,0.8,0.2
SIZE=1500,1500 XDIV=2,12,1 YDIV=1,12,2
     PEN=[Swiss(10)][BLACK]
LINETYPE=[Swiss(10)][BLACK]

....................

PLOT PETRI / MASK=A-A- DEVICE=PS,2.PS
TYPE=VBAR YLABEL=      LEGEND=- HEADER=
VALUES=##.#,0.5        MINVALUE=11
GAP=0.3,0.3,0.3        FRAME=0

SIZE=1500,1500 XDIV=2,12,1 YDIV=1,12,2
     PEN=[Swiss(10)][BLACK]
LINETYPE=[Swiss(10)][BLACK]
.........................

XSCALE=0.5:?_,1(1)6,6.7:?_
PLOT PETRI t,yield / DEVICE=PS,3.PS
YSCALE=0(20000)120000
LAG=0,-5000
POINT=weeds FRAME=0 HEADER= XLABEL= YLABEL=

SIZE=1500,1500 XDIV=2,12,1 YDIV=1,12,2
     PEN=[Swiss(10)][BLACK]
LINETYPE=[Swiss(10)][BLACK]

........................

Kuvien yhdistäminen:

EPS JOIN Tulokset 1 2 3

ja esikatselu jollain näistä tavoista:

/GV-SHOW Tulokset.PS
/PS-PDF Tulokset.PS
/GS-PDF Tulokset.PS

PS-kaavioita voisi keventää roimasti sijoittamalla
yhteiset täsmennykset, esim. SIZE, XDIV, YDIV, PEN,
LINETYPE, XLABEL, YLABEL, YSCALE toimituskentän
alkuun ja nimeämällä sen *GLOBAL* -avainsanalla.

terv. Kimmo

Vastaukset:
[ei vastauksia]

Survo-keskustelupalstan (2001-2013) viestit arkistoitiin aika ajoin sukrolla, joka automaattisesti rakensi viesteistä (yli 1600 kpl) HTML-muotoisen sivukokonaisuuden. Vuoden 2013 alusta Survo-keskustelua on jatkettu entistäkin aktiivisemmin osoitteessa forum.survo.fi. Tervetuloa mukaan!

Etusivu  |  Keskustelu
Copyright © Survo Systems 2001-2013. All rights reserved.
Updated 2013-06-15.