ฉันกำลังพยายามพล็อตจุดข้อมูลจำนวนมาก (หลายพันจุด) ใน Python โดยใช้ matplotlib ดังนั้นฉันจึงต้องการ เครื่องหมายแต่ละอันมีขนาดเล็กและแม่นยำมาก ฉันจะได้ปากกามาร์กเกอร์ที่เรียบง่ายที่สุดที่เล็กที่สุดเท่าที่จะเป็นไปได้ได้อย่างไร ฉันใช้คำสั่งนี้เพื่อลงจุดข้อมูลของฉัน:
matplotlib.pyplot( x , y ,'.',markersize=0.1,linewidth=None,markerfacecolor='black')
จากนั้นฉันสามารถดูด้วย pl.show()
แล้วบันทึก หรือใช้ plt.savefig('filename.ps')
โดยตรงในโค้ดเพื่อบันทึก ปัญหาคือ: เมื่อฉันใช้ pl.show()
เพื่อดูไฟล์ใน GUI มันจะดูดีโดยมีเครื่องหมายสีดำเล็กๆ น้อยๆ แต่เมื่อฉันบันทึกจาก show()
GUI ไปยังไฟล์หรือใช้ savefig
โดยตรง จากนั้นดู ps
ที่ฉันสร้างขึ้น มันดูแตกต่างออกไป ! เครื่องหมายแต่ละตัวได้รับรัศมีสีน้ำเงินเล็กน้อยรอบๆ (ราวกับว่ามันเริ่มต้นที่แต่ละจุดเพื่อเชื่อมต่อกับเส้นสีน้ำเงินเริ่มต้น แต่ไม่ได้ทำ) และสไตล์นั้นผิดทั้งหมด ทำไมมันถึงเปลี่ยนสไตล์เมื่อบันทึก? ฉันจะหยุดไม่ให้ Python บังคับสไตล์ของเครื่องหมายได้อย่างไร ใช่ ฉันได้ดูแพ็คเกจอื่นเช่น CairoPlot แล้ว แต่ฉัน ต้องการใช้ matplotlib ต่อไปในตอนนี้
อัปเดต: ปรากฎว่าการบันทึกเป็น PNG ก่อนจะทำให้สีออกมาใช้ได้ แต่จะบังคับให้มีการแปลงรูปภาพเมื่อฉันต้องการบันทึกอีกครั้งเป็น .ps
ในภายหลัง (เพื่อรวมไว้ใน PDF ) แล้วฉันก็สูญเสียคุณภาพ ฉันจะรักษาลักษณะเวกเตอร์ของไฟล์และจัดรูปแบบที่ถูกต้องได้อย่างไร