Если вы действительно хотите, чтобы заставить все метки для отображения, даже если они очень близки или перекрываются, вы можете «трюк» R в отображении их, добавляя нечетные и четные метки осей с отдельными командами, а именно:
labs <-c("0\n9.3%","1\n7.6%","2\n5.6%","3\n5.1%","4\n5.7%","5\n6.5%","6\n7.3%",
"7\n7.6%","8\n7.5%","9\n7%", "10\n6.2%","11\n5.2%","12\n4.2%",13:27)
n=length(labs)
plot(1:28, xaxt = "n")
axis(side=1, at=seq(1,n,2), labels=labs[seq(1,n,2)], cex.axis=0.6)
axis(side=1, at=seq(2,n,2), labels=labs[seq(2,n,2)], cex.axis=0.6)
вы можете играть с cex.axis
, чтобы получить размер текста, который вы хотите. Обратите также внимание, что вам, возможно, придется настроить количество значений в at=
и/или labels=
так, чтобы они были равны.
Я согласен с @PLapointe и @joran в том, что обычно лучше не вмешиваться в поведение R по умолчанию в отношении перекрытия. Тем не менее, у меня было несколько случаев, когда метки осей выглядели прекрасно, даже когда они были не совсем полными «m-width» в отдельности, и я ударил по трюку чередующихся нечетных и даже ярлыков в качестве способа получить поведение I разыскивается.
Вы действительно хотите включить 0 в свою индексацию? –