簡體   English   中英

圖中的圖例未顯示,y軸也未顯示所有標簽

[英]Legend in plot not showing, also y-axis not showing all labels

我真的是編程新手。 我想繪制一些數據,除了我的圖例外,其他所有工作都在進行,其中包含有關線性回歸的一些數據。 另外,y軸的格式似乎不正確,因為第一個和最后一個標簽未像x軸那樣顯示。 有人可以向我解釋一下,如何顯示我的文字說明,以及如何正確設置軸的格式?

x <- c(0, 100, 200, 300, 400, 500, 600, 700, 800, 700, 600, 500, 400, 300, 200, 100, 0)
y <- c(7.93, 8.38, 8.79, 9.08, 9.4, 9.72, 10.04, 10.35, 10.66, 10.37, 10.06, 9.73, 9.41, 9.06, 8.64, 8.36, 7.93)
x_name <- "gewicht"
y_name <- "auslenkung"
df <- data.frame(x,y)
names(df) <- c(x_name, y_name)
plot(df$gewicht, df$auslenkung,
     xaxt = "n",
     yaxt = "n",
     col = "red",
     xlab = "Belastung [g]",
     ylab = "Längenänderung [mm]",
     main = "Änderung des Länge eines Messingdrahtes",
     frame.plot = FALSE)
axis(1, at = seq(0, 800, by = 100), las= 2)
axis(2, at = seq(7.5, 11, by = 0.5), las= 2)

fit1 <- lm(auslenkung ~ gewicht, data = df)
abline(fit1, lty = "dashed")
text(x = , y = 0,labels= "slope = 3.391e-03 \n intercept = 8.012e+00 \n R2 = 0.9967 \n P = 2.2e-16")

我真的沒有經驗,所以歡迎大家的幫助。

使用正確格式化的x軸和錯誤的y軸的圖,也沒有文本框顯示:

在此處輸入圖片說明

text()函數中的xy參數與數據的相應坐標有關。 因此,您可以根據文本圖例的顯示位置來指定值。 \\n之后不需要空格。

text(x = 50, y = 9, labels= "slope = 3.391e-03 \nintercept = 8.012e+00 \nR2 = 0.9967 \nP = 2.2e-16")

要糾正y軸問題,只需在plot(.)內添加ylim = c(7.5, 11) plot(.)

完成此操作后,最好導出圖形,例如通過png()

png("test.png", width=1080, height=720, res = 100)
plot(df$gewicht, df$auslenkung, xaxt = "n", yaxt = "n", col = "red", 
     xlab = "Belastung [g]", ylab = "Längenänderung [mm]", 
     main = "Änderung des Länge eines Messingdrahtes", ylim = c(7.5, 11),
     frame.plot = FALSE)
axis(1, at = seq(0, 800, by = 100), las= 2)
axis(2, at = seq(7.5, 11, by = 0.5), las= 2)
fit1 <- lm(auslenkung ~ gewicht, data = df)
abline(fit1, lty = "dashed")
text(x = 50, y = 9, labels= "slope = 3.391e-03 \nintercept = 8.012e+00 \nR2 = 0.9967 \nP = 2.2e-16")
dev.off()

屈服

在此處輸入圖片說明

您可以稍微調整一下坐標,以將圖例放置在所需的位置。

該圖將保存到您的工作目錄中(使用getwd()進行查找)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM