當我在R中以秒爲單位測量某些數據時,如何將y軸的刻度從秒改變爲分和秒?R:在y軸上用分和秒錶示的盒圖
例如,當我做這樣的事情:
data <- c(298, 507, 1008, 346)
boxplot(data)
我得到一個boxplot
從300到1000的Y軸我想有「5:00」爲「16:40」有相反,只需將秒數轉換爲分鐘和秒。
當我在R中以秒爲單位測量某些數據時,如何將y軸的刻度從秒改變爲分和秒?R:在y軸上用分和秒錶示的盒圖
例如,當我做這樣的事情:
data <- c(298, 507, 1008, 346)
boxplot(data)
我得到一個boxplot
從300到1000的Y軸我想有「5:00」爲「16:40」有相反,只需將秒數轉換爲分鐘和秒。
這是一個嘗試。它首先關閉y軸,然後將數據轉換爲分鐘,並將其作爲tickmarks添加到y軸。
data <- c(298, 507, 1008, 346)
boxplot(data, yaxt="n")
at <- axTicks(2)
axis(2, at=at, labels=sprintf("%d:%02d", at %/% 60, at %% 60), las=1)
提供一點解釋:
「計算漂亮對勾標記的位置中,作爲R內部做同樣的方式。」(從?axTicks
)。
%%
會給你剩下分裂後,雖然%/%
的意志,如果給x %/% y
告訴你x
多少次進入y
。
最後,sprintf
用於格式化字符串和意願墊計算的秒數值總是追加領先0
的如果需要的話,即 - 2
變得02
。
與功能axis.POSIXct
一種替代方案:
data <- c(298, 507, 1008, 346)
data2 <- as.POSIXct(data, origin=cut(Sys.time(), "hours"))
boxplot(data2, pars=list(yaxt="n"))
axis.POSIXct(2, at=pretty(data2), format="%M:%S", las=2)
這是_exactly_我需要的。非常感謝 :-) –