นโยบายการจัดการความรู้ มหาวิทยาลัยสงขลานครินทร์ 1.ให้ใช้เครื่องมือการจัดการความรู้ผลักดัน คุณภาพคน และกระบวนทำงาน 2.ส่งเสริมการแลกเปลี่ยนประสบการณ์การทำงาน จากหน้างาน 3.ส่งเสริมให้มีเวทีเรียนรู้ร่วมกัน

Our Shangri-La
Ico64
Kittisakdi Choomalee

ภาควิชาเวชศาสตร์ชุมชน คณะแพทยศาสตร์ มหาวิทยาลัยสงขลานครินทร์
Network
Members · Following: 0 · Followed: 16

อ่าน: 1404
ความเห็น: 0

ก้าวย่าง ทางเดิน ลืมเลือนคืนวัน ดั้นด้นไป: หนึ่งคำถามกับ R - axis break 3

กำหนดค่าเลเบลให้กับแกนตั้งเอง ด้วย ytics จากชุดคำสั่ง plotrix

มาต่อกันด้วยเรื่องของการตัดความสูงของแท่งในแผนภูมิต่อนะครับ

ในครั้งที่แล้วเราตัด (หรือย่อ) ความสูงของแท่งแผนภูมิแกนตั้งด้วยคำสั่ง gap.barplot() จากคำสั่งใน package Plotrix ไปแล้ว

gap.barplot() จะทำการแบ่งแผนภูมิออกเป็น กลุ่ม ๆ ในที่นี้จะแบ่งออกเป็น ๒ กลุ่ม กล่าวคือตัดความสูงของแท่งข้อมูลในแผนภูมิออกในช่วงที่เราระบุไว้ในตัวเลือก gap=c()

หรือในตัวอย่างนี้จะระบุให้ตัดความสูงของแท่งข้อมูลที่มีค่าอยู่ระหว่าง ๓๐๐ - ๓,๒๐๐ หรือกำหนดค่า gap ให้มีค่าอยู่ในช่วง ๓๐๐ - ๓,๒๐๐ (gap=c(300,3200)) โดยจะใช้ช่องว่าง (gap) แทนช่วงข้อมูลที่ไม่แสดงหรือช่วงที่ตัดทิ้งไป

แต่ค่า label ของแกนตั้งนั้นยังเป็นค่าช่วงที่หยาบอยู่ และในส่วนของแผนภูมิช่วงแรกที่มีค่าต่ำกว่า ๓๐๐ นั้น ไม่ได้มีการ label ค่าแกนตั้งไว้ ทำให้ไม่ทราบว่าค่าของข้อมูลในช่วงแรกนั้นมีค่าอยู่ในช่วงไหนบ้างใด

คำสั่ง gap.barplot() มีตัวเลือกที่ใช้ระบุค่าการ label แกนตั้งให้ด้วยคือ ytics=c()

การจะระบุค่า ytics เป็นค่าใดบ้างนั้นให้เราดูจากแผนภูมิครับ ต้องกำหนดค่าให้เหมาะสมด้วย เนื่องจากไม่สามารถ label ค่าที่ระบุได้ทุกค่าเนื่องด้วยมีพื้นที่จำกัด หรือค่าที่ label อาจจะซ้อนทับกันจนอ่านค่าไม่ได้

และควรระบุช่วงห่างที่เป็นไปแบบมีระบบ หรือช่วงห่างที่เป็นช่วงคงที่ในแต่ละส่วนของแผนภูมิ เพื่อให้เป็นระบบเดียวกันในแต่ละส่วนของแผนภูมิ

ตัวอย่างการระบุค่า ytics

> library(plotrix)
> a3 <-c(100, 200, 150, 220, 190,5000, 4500, 3452)
> gap.barplot(a3, gap=c(300,3200),ytics=c(200, 3500, 4000, 4500, 5000), ylab="Frequency", xlab="Group", main="Axis Break by Plotrix Package" )
> axis.break(2,300,style="zigzag")

จากบรรทัดคำสั่งข้างบน (บรรทัดคำสั่งที่ ๓) ได้กำหนดค่า ytics เอาไว้หรือกำหนดให้ label แกนตั้งเมื่อแกนตั้งมีค่าเท่ากับ ๒๐๐, ๓๕๐๐, ๔๐๐๐, ๔๕๐๐ และ ๕๐๐๐ ตามลำดับ

บรรทัดคำสั่งบรรทัดที่ ๔ (axis.break(2,300,style="zigzag")) เป็นการกำหนดค่า axis break ให้กับแกนตั้ง (๒) ที่ตำแหน่งแกนตั้งมีค่าเท่ากับ ๓๐๐ โดยให้ใช้รูปแบบ axis break เป็นแบบ zigzag

ทั้งนี้เราอาจจะกำหนดค่า label แกนตั้งให้ถี่ขึ้นอีกนิดก็ได้แต่เราต้องเปลี่ยนรูปแบบการ label ค่าแกน โดยเปลี่ยนลักษณะของการ label จากแนวตั้งมาเป็นแนวนอน โดยกำหนดค่า las เท่ากับ ๑

> gap.barplot(a3, gap=c(300,3200),ytics=c(100, 200, 3500, 3750, 4000, 4250, 4500, 4750, 5000), ylab="Frequency", xlab="Group", main="Axis Break by Plotrix Package", las=1 )

las เป็นพารามิเตอร์มาตรฐานของคำสั่ง plot ในโปรแกรม R ดังนั้นคำสั่งที่เกี่ยวข้องกับ graphic ของโปรแกรม R คำสั่งใดที่ระบุเอาไว้ว่า สามารถใช้ค่าพารามิเตอร์มาตรฐานของ plot ได้ก็สามารถใช้ (กำหนด/ ระบุ) ค่าพารามิเตอร์มาตรฐานต่าง ๆ ในคำสั่งนั้น ๆ ได้

ไวยากรณ์ของคำสั่ง gap.barplot() คือ

gap.barplot(y,gap,xaxlab,xtics,yaxlab,ytics,xlim=NA,ylim=NA,xlab=NULL, ylab=NULL,horiz=FALSE,col,...)

ส่วน ,... นั้นคือ อาร์กิวเมนต์ของคำสั่ง barplot (arguments passed to barplot) ดังนั้นค่าที่สามารถระบุได้ในคำสั่ง gap.barplot() นอกเหนือจากที่แสดงไว้ในไวยากรณ์ข้างต้นแล้ว ((y, gap, xaxlab, xtics, yaxlab, ytics, xlim=NA, ylim=NA, xlab=NULL, ylab=NULL, horiz=FALSE, col ) ยังสามารถใช้อาร์กิวเมนต์จากคำสั่ง barplot ได้อีกด้วย

เราเอง

เพลง: รอเธอ
ศิลปิน: บรั่นดี
แนวคิด: เพลงดังเมื่อหลายปีก่อนที่ยังฟังได้

 

Sections: บริการวิชาการ
License: ซีซี: แสดงที่มา-ไม่ใช้เพื่อการค้า-อนุญาตแบบเดียวกัน Cc-by-nc-sa
created: 13 January 2013 23:52 Modified: 14 January 2013 14:27 [ Report Abuse ]
ดอกไม้
People who like this: Ico24 DaDa, Ico24 ServiceMan, and 3 others.
People Who Like This
 
Facebook
Twitter
Google

Other Posts By This Blogger

ความเห็น

ไม่มีความเห็น

ร่วมแสดงความเห็นในหน้านี้

ชื่อ:
อีเมล:
IP แอดเดรส: 3.233.239.20
ข้อความ:  
เรียกเครื่องมือจัดการข้อความ
   
ยกเลิก หรือ