การเพิ่มคุณภาพของเอาต์พุต EMF ใน R และ ggplot2

ฉันกำลังสร้างและบันทึกไฟล์ EMF ด้วย ggplot2 และด้วยคำสั่ง win.graph กราฟเอาต์พุตมีคุณภาพต่ำและเส้นดูหยัก ฉันจำเป็นต้องมีมันในรูปแบบ EMF จริงๆ (การส่งออกเป็น pdf แก้ปัญหาได้ แต่ฉันต้องการไฟล์ EMF) ฉันจะทำให้มีคุณภาพสูงได้อย่างไร? (เอาต์พุต emf ที่นี่ ในกรณีที่คุณต้องการดู)

require(ggplot2)
my.dates = as.Date(c("2011-07-22","2011-07-23",
                     "2011-07-24","2011-07-28","2011-07-29"))
my.vals  = c(5,6,8,7,3)
my.data <- data.frame(date =my.dates, vals = my.vals)
plot(my.dates, my.vals)
p <- ggplot(data = my.data, aes(date,vals))+ geom_line(size = 1.5)
p <- p + scale_x_date(format="%m/%d", ' ')
win.graph(width=860/72, height=450/72,pointsize = 12)

print(p)
savePlot("c:/test.emf",type="emf")
dev.off()

person Mark    schedule 10.07.2011    source แหล่งที่มา
comment
คุณสามารถใช้ ggsave เพื่อกำจัดโค้ดสองสามบรรทัด: ggsave("c:/test.emf", p)   -  person hadley    schedule 10.07.2011


คำตอบ (2)


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

อัปเดต: ฉันดำเนินการต่อและเขียนสคริปต์ VBA เล็กน้อยที่จะยกเลิกการจัดกลุ่มไฟล์ EMF โดยแบ่งเป็นวัตถุกราฟที่สามารถปรับขนาดได้ง่าย ตอนนี้มันดูดีมาก

person Mark    schedule 10.07.2011
comment
คุณประสบปัญหาที่คล้ายกันใน MS Word หรือไม่? เคล็ดลับการคลิกขวา + edit picture ไม่ทำงานในกรณีของฉัน ความละเอียดดูเหมือนใช้ได้ แต่องค์ประกอบกราฟิก (เช่น สัญลักษณ์จุด) บิดเบี้ยวเล็กน้อย - person Valentin; 29.11.2017

คุณสามารถบันทึก ggplot ของคุณเป็น SVG จากนั้นจึงประมวลผลภายหลังด้วย Inkscape ใช้งานง่าย ฟรี และให้ผลลัพธ์ที่ยอดเยี่ยม

person Ralf    schedule 03.02.2017