ถาม:ฉันจะให้ ESS (R) พล็อตตรงไปยังบัฟเฟอร์ Emacs ได้อย่างไร
เมื่อโต้ตอบกับ R ถึง ESS ค่าเริ่มต้น R จะวางไข่หน้าต่างกราฟิกแยกต่างหากด้านนอกของ Emacs เพื่อวาดแผนผัง (แน่นอนหนึ่งสามารถเลือกอุปกรณ์กราฟิกอื่น ๆ ซึ่งเป็นวิธีที่เราวางแผนเป็น PDF และอื่น ๆ ) สองประเด็น: ประการแรกหน้าต่างใหม่ขโมยโฟกัสจาก Emacs และที่สองแน่นอนว่ามันจะดีเพื่อให้ทุกอย่างเรียบร้อยและเป็นระเบียบเรียบร้อย ภายในระบบนิเวศของ Emacs
ดังนั้น: มีวิธีใดบ้างในการพล็อต "โดยตรง" (หรือแม้แต่ทางอ้อม) ไปยังบัฟเฟอร์ของ Emacs และที่สำคัญกว่านั้นคือการทำเช่นนั้นโดยไม่มีการแทรกแซงโดยผู้ใช้จำนวนมาก?
มีการพูดคุยกันก่อนหน้านี้ในเธรดสแต็คโอเวอร์โฟลว์เก่านี้แต่การแก้ปัญหาบางส่วนที่เสนอนั้นไม่เหมาะ พวกเขาส่วนใหญ่เกี่ยวข้องกับการเปลี่ยนอุปกรณ์การพล็อตใน R (พูดเป็น PNG) การพล็อตเป็นไฟล์ชั่วคราวจากนั้นไปที่ไฟล์นั้นด้วยตนเองในบัฟเฟอร์ Emacs ทั้งหมดนี้ทำให้ฉันรู้สึกว่าเป็น clunky มากโดยเฉพาะอย่างยิ่งถ้าเป้าหมายคือการใช้หน้าต่างพล็อต / บัฟเฟอร์แบบโต้ตอบและวาดพล็อตจำนวนมากในเซสชัน (หรือเพิ่มเลเยอร์ให้กับพวกเขาได้ทันที)
ฉันคาดเดาที่นี่ แต่มันทำให้ฉันรู้สึกว่าเนื่องจากทั้ง R และ Emacs รองรับ SVG นั่นอาจเป็นรูปแบบที่มีประโยชน์ในการใช้ อย่างไรก็ตามมันไม่ชัดเจนสำหรับฉันหาก / วิธีการหนึ่งสามารถขอเข้ากระบวนการ R เพื่อสื่อสารได้ทันที มีวิธีที่จะให้ R spit รหัส SVG ลงในบัฟเฟอร์ Emacs โดยตรงหรือจะต้องผ่านตัวกลางของไฟล์ชั่วคราวหรือไม่? เราจะโน้มน้าวให้ Emacs เยี่ยมชมไฟล์ชั่วคราวใหม่โดยอัตโนมัติได้อย่างไรเมื่อ R สร้างขึ้นหรืออัพเดตพล็อตบัฟเฟอร์ดังกล่าวเมื่อไฟล์ชั่วคราวได้รับการอัพเดต / เขียนทับโดยพล็อตใหม่
create-image
ของ ฉันไม่สามารถช่วยคุณในการทำให้ R และ Emacs สื่อสารกันเพื่อให้ได้สิ่งนั้น