Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to move X axis from top to bottom on coefficient plot in R (coefplot)?

I have written some code to produce a plot of some logistic regression coefficients and their associated confidence intervals. I have stored these in vectors rather than plotting directly from glm as the data I am using is not my own. Below is the code. I would like the plot to remain horizontal, however I would really like the x axis labels and tick marks to be at the bottom of the plot rather than the top. I have searched the web high and low for an answer to this, but can't seem to find a solution. Any advice would be much appreciated.

require(arm)
coef.vect <- c(0.3, 1.5, 2.2, 0.5)
CI.vect <- c(0.15, 0.20, 0.22, 0.16)
longnames <- c("var1", "var2", "var3", "var4")
coefplot (coef.vect, CI.vect, varnames=FALSE, main="Regression Coefficients")
for (i in 1:length(coef.vect)) { text(coef.vect[i], i, longnames[i], cex = .8, pos = 3)}
like image 747
LauRa28 Avatar asked Dec 15 '25 11:12

LauRa28


1 Answers

you can try to not plot the x axis and then add it, at the bottom, with axis:

coefplot (coef.vect, CI.vect, varnames=FALSE, main="Regression Coefficients", h.axis=F)
axis(side=1, line=-1)

by the way, you don't need the for loop here, you can do directly:

text(coef.vect, seq(coef.vect), longnames, cex = .8, pos = 3)

enter image description here

like image 50
Cath Avatar answered Dec 17 '25 00:12

Cath



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!