เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

เปลี่ยนแกน y เป็น density

โดยค่าเริ่มต้น แกน y จะแสดงเป็น 'count' หรือจำนวนจุดข้อมูลที่ตกอยู่ในแต่ละช่วง (bin) ซึ่งอ่านค่าได้ง่ายและเข้าใจง่าย แต่ถ้าต้องการตีความกราฟในรูปแบบของ density curve ที่แท้จริงล่ะ? กล่าวคือ ผลรวมของ (ความกว้างแท่ง) * (ความสูงแท่ง) ทุกแท่งจะเท่ากับ 1 พอดี

วิธีทำนั้นง่ายมาก เพียงเพิ่ม y = stat(density) เข้าไปใน aesthetic mappings ก็จะปรับสเกลแกน y จากการนับจำนวนให้เป็นการประมาณค่าความน่าจะเป็นเชิงประจักษ์ (empirical probability) โดยรูปทรงของกราฟจะไม่เปลี่ยนแปลงเลย เพียงแต่การตีความแกน y จะแตกต่างออกไป

ลองนำไปใช้กับข้อมูลชั่วโมงที่ผู้ขับขี่ถูกจับในข้อหาขับรถเร็วเกินกำหนด (hour_of_day) นอกจากนี้ ให้ลดความทึบแสงของแท่งกราฟลงเล็กน้อย เพื่อให้เส้นกริดแสดงผ่านออกมา ช่วยให้เปรียบเทียบข้อมูลได้ง่ายขึ้น

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

แนวทางปฏิบัติที่ดีที่สุดสำหรับการสร้างภาพข้อมูลใน R

ดูคอร์ส

คำแนะนำการฝึกหัด

  • กำหนด x-aesthetic เป็น hour_of_day
  • กำหนด y-aesthetic เป็น stat(density)
  • เปลี่ยนค่า alpha ใน geom_histogram() เป็น 0.8

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

ggplot(md_speeding) +
	geom_histogram(
		# set x and y aesthetics to hour_of_day and stat(density) respectively.
		___
		# make points see-through by setting alpha to 0.8
		___
	)
แก้ไขและรันโค้ด