Stel R-plots x-as in om weer te geven op y=0

Meestal als ik een R-lijn plot en ylim=c(0,some_value)instel, is er een kleine ruimte tussen de x-as en y=0.

Ik wil graag dat de y-as precies op y=0 wordt weergegeven, zodat punten (x,0) op de y-as worden uitgezet (en niet erboven).


Antwoord 1, autoriteit 100%

U wilt waarschijnlijk de grafische parameters xaxsen yaxsmet stijl “i”:

plot(1:10, rnorm(10), ylim=c(0,10), yaxs="i")

Zie ?par:

xaxs: de stijl van het as-interval
berekening die voor de x-as moet worden gebruikt.
Mogelijke waarden zijn “r”, “i”, “e”,
“s”, “d”. De stijlen zijn over het algemeen:
gecontroleerd door het gegevensbereik of
xlim, indien gegeven. Stijl “r” (normaal)
breidt eerst het gegevensbereik uit met 4
procent aan elk uiteinde en vindt dan een
as met mooie labels die passen
binnen het uitgebreide bereik. stijl “ik”
(intern) vindt net een as met
mooie labels die passen binnen de
oorspronkelijke gegevensbereik. Stijl “s”
(standaard) vindt een as met pretty
labels waarbinnen de originele gegevens
bereik past. Stijl “e” (uitgebreid) is
zoals stijl “s”, behalve dat het ook is
zorgt ervoor dat er ruimte is voor
symbolen plotten binnen de begrenzing
doos. Stijl “d” (direct) geeft aan dat:
de huidige as moet worden gebruikt op
volgende percelen. (Alleen “r” en “i”
stijlen zijn momenteel geïmplementeerd)

yaxs: de stijl van asintervalberekening die voor de y-as moet worden gebruikt.
Zie xaxshierboven.


Antwoord 2, autoriteit 26%

Een andere optie is om het plotten van de assen in de plot uit te schakelen met behulp van axes=Fen vervolgens de assen afzonderlijk in te voeren met het axis-commando, waarbij de optie posde as bestuurt afstand.

plot(1:10, runif(10), ylim=c(0,1), xlim=c(0,10),axes=F)
     axis(1, pos=0)
     axis(2, pos=0)   

Other episodes