พล็อตกราฟแท่งอย่างง่ายใน R ข้อผิดพลาด: ความสูงต้องเป็นเวกเตอร์ของเมทริกซ์ [ซ้ำกัน]

นี่คือ dataframe ของฉันใน R

New York  8755
     Texas  7654
California  6726
   Florida  6322

ฉันเพียงต้องการให้กราฟเปรียบเทียบตัวเลขในแท่งที่เรียงซ้อนกัน ฉันไม่สามารถบรรลุเป้าหมายได้ ฉันได้รับข้อผิดพลาด "ความสูงต้องเป็นเวกเตอร์ของเมทริกซ์" กรุณาแนะนำ! ขอบคุณมาก!


person ledzee    schedule 26.06.2015    source แหล่งที่มา
comment
คำสั่งที่คุณใช้ในการพล็อตคืออะไร? คุณอาจต้องการสิ่งนี้ - barplot(x$V2,names.arg=x$V1) โดยที่ x คือข้อมูลของคุณ และ v1 และ v2 คือชื่อของเมืองและคอลัมน์ข้อมูล   -  person jeremycg    schedule 26.06.2015
comment
ฉันใช้ข้อผิดพลาด barplot(us.june) ใน barplot.default(us.june) : 'height' must be a vector or a matrix › barplot(us.june)   -  person ledzee    schedule 26.06.2015
comment
ดังนั้น barplot(us.june[,2],names.arg=us.june[,1]) คุณต้องบอก R ว่าคอลัมน์ไหนเป็นข้อมูล และคอลัมน์ไหนเป็นชื่อ ข้อผิดพลาดที่คุณได้รับคือ R บอกคุณว่าต้องใช้เพียงตัวเลขในการพลอต แต่คุณให้อย่างอื่นไป   -  person jeremycg    schedule 26.06.2015
comment
ขอบคุณมาก.. ฉันทำงานกับมันมาระยะหนึ่งแล้ว! ฉันจะจำสิ่งนี้ไว้ในใจตอนนี้   -  person ledzee    schedule 26.06.2015


คำตอบ (1)


R ไม่สามารถบอกได้ว่าตัวแปรใดเป็นตัวแปรใดเมื่อคุณส่งผ่าน data.frame ทั้งหมดเพื่อลงจุด ในกรณีนี้ ข้อผิดพลาด 'height' must be a vector or a matrix กำลังบอกคุณว่าคุณไม่ได้ให้ฟังก์ชัน plot เป็นไปตามที่ต้องการ

สำหรับ barplot การใช้ ?barplot จะบอกคุณถึงสิ่งที่จำเป็น:

barplot (ความสูง, ความกว้าง = 1, ช่องว่าง = NULL, name.arg = NULL ....

ในกรณีของคุณ คุณมี data.frame ที่มีความสูงอยู่ในคอลัมน์ที่สอง และมีชื่ออยู่ในคอลัมน์แรก ดังนั้นคุณจึงต้องการทำ:

barplot(data[ ,2], names.arg = data[ ,1])
person jeremycg    schedule 26.06.2015