The reason you cannot change the line width (this is the lwd argument you should look for here, not the line height here) is because it is not applied in the map.scale() function and passed to lines() call this part of the scale. We can, however, programmatically add this functionality to the function by doing something like this:
library(maps) t <- capture.output(map.scale) ## Strip trailing text: t <- t[-length(t)] ## Find lines() call and add in a line width argument: t <- gsub("(lines\\(linexy)", "\\1, lwd=lwd", t) t <- gsub("(\\.\\.\\.)", "\\1, lwd=10", t) t <- paste(t, collapse="\n") eval( parse(text=paste0( "map.scale.new <- ", t )) ) ## Use our new map.scale.new() function with lwd= parameter: png("example.png", width = 6000, height = 6000) map(database = "world", regions = 'Brazil',fill = T) map.scale.new( -43, -30, ratio = F, cex = 9, lwd= 10, pos =1, offset = 1 ) dev.off()
You can change lwd= to suit your fantasies.

source share