วิธีจัดข้อความชิดซ้ายในคำอธิบายประกอบจาก ggplot2


93

ตัวอย่างของฉันคือ:

qplot(mtcars$mpg) + 
  annotate(geom = "text", x = 30, y = 3, label = "Some text\nSome more text")

ฉันจะทำให้ข้อความตรงนี้ชิดซ้ายได้อย่างไร เพื่อให้ 'บางคนเข้าแถวกัน

คำตอบ:


147

hjust = 0ทำในสิ่งที่คุณต้องการ hjustย่อมาจากแนวนอน 0 จะจัดชิดซ้าย 0.5 จะอยู่กึ่งกลางและ 1 จะจัดชิดขวา

qplot(mtcars$mpg) +
    annotate(geom = "text", x = 30, y = 3,
             label = "Some text\nSome more text",
             hjust = 0)

ดูvjustเหตุผลแนวตั้งด้วย

ในggplot2อาร์กิวเมนต์เหล่านี้จะปรากฏทุกครั้งที่มีการตั้งค่าการกำหนดลักษณะข้อความ พวกเขาทำงานannotate, geom_textหรือในelement_textขณะที่ปรับตัวเลือกธีม

ถ้าคุณดูที่?geom_textคุณสามารถหาตัวเลือกสตริงข้อความ: "left", "middle"หรือ"right"(เพราะhjust) "top", "center", "bottom"สำหรับvjustและสำหรับการอย่างใดอย่างหนึ่ง"inward"และ"outward"ซึ่งมักจะปรับเข้าหาหรือออกห่างจากศูนย์


ลักษณะการทำงานนี้จะคล้ายกันในหลายbaseฟังก์ชั่นกราฟิกเช่นadjอาร์กิวเมนต์สำหรับการparใช้โดยtext(), mtext()และtitle()ซึ่งสามารถเวกเตอร์ของความยาว 2 สำหรับ justificatons นอนและแนวตั้ง นอกจากนี้hadjและpadjอาร์กิวเมนต์axis()สำหรับเหตุผลhแนวนอนถึงและp ตั้งฉากกับแกน


คำตอบที่ดี @Gregor ช่วยลิงค์เราไปยังบทความดีๆเกี่ยวกับพารามิเตอร์ที่ซ่อนอยู่ของ ggplot แบบนี้ได้ไหม .. การอ้างอิงส่วนใหญ่ของ ggplot บอกว่า... Other arguments passed on to layer(). These are often aesthetics, used to set an aesthetic to a fixed value, like colour = "red" or size = 3. They may also be parameters to the paired geom/stat. ... ซึ่งไม่ค่อยมีประโยชน์
Lazarus Thurston

@LazarusThurston พารามิเตอร์ไม่ได้ถูกซ่อนไว้ซึ่งมีการบันทึกไว้อย่างละเอียดในหน้า geom หลัก annotateช่วยให้คุณสามารถใช้ geom ส่วนใหญ่geom = "text"ได้ที่นี่ดังนั้น?geom_textหน้าความช่วยเหลือจึงมีรายละเอียดที่เกี่ยวข้อง ?geom_textมีหัวเรื่องสำหรับAlignmentซึ่งขึ้นต้นว่า "คุณสามารถปรับเปลี่ยนการจัดแนวข้อความด้วยสุนทรียศาสตร์vjustและhjustความสวยงามซึ่งอาจเป็นตัวเลขระหว่าง 0 (ขวา / ล่าง) และ 1 (บน / ซ้าย) หรืออักขระ ... "
Gregor Thomas
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.