Câu trả lời:
expression
là bạn của bạn:
plot(1,1, main=expression('title'^2)) #superscript
plot(1,1, main=expression('title'[2])) #subscript
bquote
khi làm việc với các biến được chỉ định. Giả sử, nIter <- 2
sau đó plot(1, 1, main = bquote(title[.(nIter)]))
chính xác là những gì bạn cần (lấy từ danh sách gửi thư trợ giúp R ).
Nếu bạn đang muốn có nhiều subcript trong một văn bản thì hãy sử dụng dấu sao (*) để tách các phần:
plot(1:10, xlab=expression('hi'[5]*'there'[6]^8*'you'[2]))
plot(1:10, xlab=expression('hi'[5]*'there'[6]^8*'you'['down here']*'and'^'up'*'there'))
[digits]
hoặc [characters]
hoặc thậm chí [a5]
trong chỉ số dưới nhưng không [5a]
hay [a a]
. Gần đây tôi đã phát hiện ra điều này cho:expression('x'['10sdt'])
Một chỉ số con và tham chiếu đến một giá trị được lưu trữ ...
a <- 10
plot(c(0,1), c(0,1), type = 'n', ann = FALSE, xaxt = 'n', yaxt = 'n')
text(0.2, 0.6, cex = 1.5, bquote(paste('S'['f']*' = ', .(a))))
Một ví dụ khác, biểu thức hoạt động cho các ký tự trên phủ định mà không cần dấu ngoặc kép xung quanh số âm:
title(xlab=expression("Nitrate Loading in kg ha"^-1*"yr"^-1))
và bạn chỉ cần dấu * để tách các phần như đã đề cập ở trên (khi bạn viết chỉ số trên hoặc chỉ số dưới và cần thêm nhiều văn bản vào biểu thức sau).
Như những người dùng khác đã chỉ ra, chúng tôi sử dụng expression()
. Tôi muốn trả lời câu hỏi ban đầu liên quan đến dấu phẩy trong chỉ số phụ:
Làm thế nào tôi có thể viết v 1,2 với 1,2 dưới dạng subcript?
plot(1:10, 11:20 , main=expression(v["1,2"]))
Ngoài ra, tôi muốn thêm tài liệu tham khảo cho những người đang tìm kiếm expression
cú pháp đầy đủ trong việc R
vẽ biểu đồ: Để biết thêm thông tin, hãy xem ?plotmath
trang trợ giúp. Chạy demo(plotmath)
sẽ hiển thị nhiều biểu thức và cú pháp có liên quan.
Hãy nhớ sử dụng *
để nối các loại văn bản khác nhau trong một biểu thức.
Dưới đây là một số kết quả mẫu từ demo(plotmath)
: