Subscripts ในแปลงใน R


102

ฉันไม่พบวิธีการเขียนตัวห้อยในชื่อเรื่องหรือคำบรรยายใน R ฉันจะเขียน v 1,2 โดย 1,2 เป็นตัวห้อยได้อย่างไร

ขอบคุณสำหรับความช่วยเหลือของคุณ!

คำตอบ:


142

expression เป็นเพื่อนของคุณ:

plot(1,1, main=expression('title'^2))  #superscript
plot(1,1, main=expression('title'[2])) #subscript

3
จะโหลด "2" จากตัวแปรได้อย่างไร? ฉันมีลูปและต้องการพล็อต x_ [1] x_ [2] x_ [3] ...
0x2207

6
คุณสามารถใช้bquoteเมื่อทำงานกับตัวแปรแบบห้อย พูดnIter <- 2แล้วplot(1, 1, main = bquote(title[.(nIter)]))เป็นสิ่งที่คุณต้องการ (นำมาจากรายชื่ออีเมล R-help )
fdetsch

125

หากคุณต้องการมีตัวห้อยหลายตัวในข้อความเดียวให้ใช้ดาว (*) เพื่อแยกส่วนต่างๆ:

plot(1:10, xlab=expression('hi'[5]*'there'[6]^8*'you'[2]))

6
ว้าวคำตอบสองวันสำหรับคำถามอายุสองขวบนั่นกลายเป็นสิ่งที่ฉันต้องการ ขอบคุณ!
Michael

3
และหากคุณต้องการให้ตัวห้อยเป็นสตริงให้ใส่เครื่องหมายคำพูด:plot(1:10, xlab=expression('hi'[5]*'there'[6]^8*'you'['down here']*'and'^'up'*'there'))
Stewart Macdonald

1
นั่นคือเคล็ดลับที่ดีที่สุดเท่าที่คุณสามารถใส่[digits]หรือ[characters]หรือแม้กระทั่ง[a5]ในห้อย แต่ไม่หรือ[5a] [a a]ฉันเพิ่งค้นพบสิ่งนี้สำหรับ:expression('x'['10sdt'])
Cyrille


10

ตัวห้อยและอ้างถึงค่าที่เก็บไว้ ...

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))))

ป้อนคำอธิบายภาพที่นี่


6

อีกตัวอย่างหนึ่งนิพจน์ใช้ได้กับตัวยกเชิงลบโดยไม่จำเป็นต้องมีเครื่องหมายคำพูดรอบจำนวนลบ:

title(xlab=expression("Nitrate Loading in kg ha"^-1*"yr"^-1))

และคุณต้องการเพียง * เพื่อแยกส่วนต่างๆตามที่กล่าวไว้ข้างต้น (เมื่อคุณเขียนตัวยกหรือตัวห้อยและต้องเพิ่มข้อความเพิ่มเติมในนิพจน์หลัง)


1
ขอบคุณที่อธิบายอย่างชัดเจนว่า * ทำอะไร!
Lalochezia

4

expression()ในฐานะที่เป็นผู้ใช้งานอื่นได้ชี้ให้เห็นเราใช้ ฉันต้องการตอบคำถามเดิมซึ่งเกี่ยวข้องกับเครื่องหมายจุลภาคในตัวห้อย:

ฉันจะเขียน v 1,2 กับ 1,2 เป็นตัวห้อยได้อย่างไร

plot(1:10, 11:20 , main=expression(v["1,2"]))

นอกจากนี้ฉันต้องการเพิ่มการอ้างอิงสำหรับผู้ที่ต้องการค้นหาexpressionไวยากรณ์แบบเต็มในRการลงจุด: สำหรับข้อมูลเพิ่มเติมโปรดดูที่?plotmathหน้าความช่วยเหลือ การรันdemo(plotmath)จะแสดงนิพจน์จำนวนมากและไวยากรณ์ที่เกี่ยวข้อง

อย่าลืมใช้*เพื่อรวมข้อความประเภทต่างๆภายในนิพจน์

นี่คือตัวอย่างบางส่วนจากdemo(plotmath):

ป้อนคำอธิบายภาพที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.