1

我在 R 中有以下情节:

x = c(0, 1e-10, 1e-08, 1e-06, 1e-05, 0.001, 0.1);
y = c(22000, 21490, 17252, 9204, 6118, 5092, 4998);
z = c(85.59, 85.59, 85.58, 85.49, 85.29, 85.29, 85.29);

x1 = c(0, 1e-10, 1e-08, 1e-06, 1e-05, 0.001, 0.1);
y2 = c(22000, 20039, 15185, 7705, 5436, 5223, 4933);
z2 = c(85.59, 85.59, 85.58, 85.53, 85.46, 85.49, 85.49);

y = y / 60;

y2 = y2 / 60;


x = log(x);

par("mar")
par(mar = c(par("mar")[1:3], 5.1))

plot(x,y, type="n", lwd=4, ylab="", xlab="threshold", xaxt="n",yaxt="n")

axis(1,lwd=4)
axis(2,lwd=4)

points(x, y, type = "l", lwd=4)

points(x, y, col="red", cex=2, pch=19)

points(x, y2, lwd=4, type="o", lty=2, col="black");

points(x, y2, col="red", cex=2, pch=19);

par("usr")
par(usr = c(par("usr")[1:2], 84,86))

axis(4, lwd=4)
points(x, z, type="l", lwd=4)

points(x, z, col="blue", cex=2, pch=15)

points(x, z2, type="l", col="black", lty=2, lwd=4)

points(x, z2, col="blue", cex=2, pch=15)


mtext("Measure1", side = 4, col = "blue",line=3)
mtext("Measure2", side = 2, col = "red",line=3)

它对我来说几乎是完美的,但我只想根据以下内容对其进行调整:

  1. 左 y 轴和 x 轴 - 它们更粗,但由于某种原因,粗体部分并未在整个轴上延伸。

  2. 我想让数字和标签的字体更大一点,也许是粗体。

  3. 我什至可能想将字体更改为 Times,但从我在网上看到的情况来看,这对我来说听起来很麻烦。

谢谢!

4

1 回答 1

0

正如@thelatemail 在上面的评论中提到的那样,您的第一个问题可以通过以下功能来回答box

box(lwd=4)

如果您只希望带有轴的边是粗体,那么您需要添加一个bty参数:

box(lwd=4, bty="u") # For all the different kind of boxes see ?par.

要更改标签的字体和大小,您必须在and语句中使用参数fontcex.lab或:cex.axisplotaxis

axis(1, font=2, cex.axis=1.1) #font=2 correspond to bold face. See ?par for more information

最后对于字体,您可以使用参数family,但是它在各种输出设备上的工作方式不同。您将在此答案的“字体”部分?x11此答案中找到有关该主题的更多信息。

axis(1, family="Times") #This will work with Cairo devices for example.

这是您的绘图,cex.axis设置为 1.1,粗体字体和粗体 U 形框以及 Times 字体: 在此处输入图像描述

于 2012-08-03T09:14:14.977 回答