คำถามติดแท็ก matplotlib

Matplotlib เป็นไลบรารีการพล็อตสำหรับ Python ซึ่งอาจใช้แบบโต้ตอบหรือฝังใน GUI แบบสแตนด์อะโลน อินเทอร์เฟซ "pyplot" ขนาดกะทัดรัดคล้ายกับฟังก์ชันการลงจุดของMATLAB®

4
ตั้งเครื่องหมายสำหรับแต่ละจุดบนบรรทัดใน Matplotlib
ฉันใช้ Matplotlib เพื่อพล็อตบรรทัดบนรูป ตอนนี้ฉันต้องการตั้งค่าสไตล์โดยเฉพาะเครื่องหมายสำหรับแต่ละจุดในบรรทัด ฉันจะทำสิ่งนี้ได้อย่างไร เพื่อชี้แจงคำถามของฉันฉันต้องการที่จะสามารถกำหนดรูปแบบสำหรับเครื่องหมายแต่ละตัวในบรรทัดไม่ใช่ตัวทำเครื่องหมายบนบรรทัดดังกล่าว
174 python  matplotlib 

5
Matplotlib (pyplot) savefig แสดงผลภาพเปล่า
ฉันพยายามที่จะบันทึกแปลงที่ฉันใช้ matplotlib; อย่างไรก็ตามรูปภาพกำลังบันทึกว่างเปล่า นี่คือรหัสของฉัน: plt.subplot(121) plt.imshow(dataStack, cmap=mpl.cm.bone) plt.subplot(122) y = copy.deepcopy(tumorStack) y = np.ma.masked_where(y == 0, y) plt.imshow(dataStack, cmap=mpl.cm.bone) plt.imshow(y, cmap=mpl.cm.jet_r, interpolation='nearest') if T0 is not None: plt.subplot(123) plt.imshow(T0, cmap=mpl.cm.bone) #plt.subplot(124) #Autozoom #else: #plt.subplot(124) #Autozoom plt.show() plt.draw() plt.savefig('tessstttyyy.png', dpi=100) และ tessstttyyy.png ว่างเปล่า (ลองด้วย. jpg)

10
วิธีบันทึกพล็อตของ Seaborn ลงในไฟล์
ฉันลองรหัสต่อไปนี้ ( test_seaborn.py): import matplotlib matplotlib.use('Agg') import matplotlib.pyplot as plt matplotlib.style.use('ggplot') import seaborn as sns sns.set() df = sns.load_dataset('iris') sns_plot = sns.pairplot(df, hue='species', size=2.5) fig = sns_plot.get_figure() fig.savefig("output.png") #sns.plt.show() แต่ฉันได้รับข้อผิดพลาดนี้: Traceback (most recent call last): File "test_searborn.py", line 11, in <module> fig = sns_plot.get_figure() AttributeError: 'PairGrid' object has no attribute …

12
การลบพื้นที่สีขาวรอบรูปภาพที่บันทึกใน matplotlib
ฉันต้องการถ่ายภาพและบันทึกหลังจากกระบวนการบางอย่าง รูปดูดีเมื่อฉันแสดง แต่หลังจากบันทึกตัวเลขฉันมีพื้นที่สีขาวรอบรูปภาพที่บันทึกไว้ ฉันได้ลองใช้'tight'ตัวเลือกสำหรับsavefigวิธีการแล้วก็ไม่ได้ผล รหัส: import matplotlib.image as mpimg import matplotlib.pyplot as plt fig = plt.figure(1) img = mpimg.imread(path) plt.imshow(img) ax=fig.add_subplot(1,1,1) extent = ax.get_window_extent().transformed(fig.dpi_scale_trans.inverted()) plt.savefig('1.png', bbox_inches=extent) plt.axis('off') plt.show() ฉันกำลังพยายามวาดกราฟพื้นฐานโดยใช้ NetworkX ในรูปและบันทึก ฉันรู้ว่าไม่มีกราฟมันทำงาน แต่เมื่อเพิ่มกราฟฉันได้รับพื้นที่สีขาวรอบภาพที่บันทึกไว้; import matplotlib.image as mpimg import matplotlib.pyplot as plt import networkx as nx G = nx.Graph() G.add_node(1) G.add_node(2) …
172 python  matplotlib 

5
ฉันจะวาดกริดบนพล็อตใน Python ได้อย่างไร [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน3 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันเพิ่งเขียนโค้ดเพื่อสร้างพล็อตโดยใช้pylabใน Python และตอนนี้ฉันต้องการวางตารางขนาด 10x10 ลงในสแกตเตอร์กระจาย ฉันจะทำอย่างไร รหัสปัจจุบันของฉันคือ: x = numpy.arange(0, 1, 0.05) y = numpy.power(x, 2) fig = plt.figure() ax = fig.gca() ax.set_xticks(numpy.arange(0, 1, 0.1)) ax.set_yticks(numpy.arange(0, 1., 0.1)) plt.scatter(x, y) plt.show() และผลลัพธ์คือ: สิ่งที่ฉันต้องการคือผลลัพธ์ต่อไปนี้: แก้ไข: เพิ่มตัวอย่างจากคำตอบของ Andrey Sobolev
170 python  matplotlib 

8
ลบคำอธิบายแผนภูมิบนรูป matplotlib
หากต้องการเพิ่มตำนานการพล็อต matplotlib legend()หนึ่งก็วิ่ง วิธีลบคำอธิบายแผนภูมิออกจากพล็อตได้อย่างไร (สิ่งที่ฉันเข้ามาใกล้ที่สุดคือการเรียกใช้legend([])เพื่อลบคำอธิบายแผนภูมิออกจากข้อมูล แต่นั่นทำให้รูปสี่เหลี่ยมผืนผ้าสีขาวน่าเกลียดอยู่ที่มุมขวาบน)
169 matplotlib  legend 

6
วิธีการทำพล็อตกระจายกับวงกลมที่ว่างใน Python
ใน Python ด้วย Matplotlib พล็อตกระจายที่มีวงกลมว่างเปล่าจะถูกพล็อตได้อย่างไร เป้าหมายคือการวาดวงกลมที่ว่างเปล่ารอบ ๆดิสก์สีบางอันที่ได้วางแผนไว้แล้วscatter()เพื่อที่จะไฮไลต์โดยไม่ต้องวาดวงกลมสีใหม่ ฉันพยายามที่facecolors=Noneจะไม่มีประโยชน์

9
ฉันจะสร้างตำนานเดี่ยวสำหรับแผนการย่อยจำนวนมากด้วย matplotlib ได้อย่างไร
ฉันกำลังพล็อตข้อมูลประเภทเดียวกัน แต่สำหรับประเทศต่าง ๆ ที่มีแผนย่อยจำนวนมากที่มี matplotlib นั่นคือฉันมี 9 แปลงบนตาราง 3x3 ทั้งหมดมีเหมือนกันสำหรับเส้น (แน่นอนค่าที่แตกต่างกันต่อบรรทัด) อย่างไรก็ตามฉันยังไม่ได้คิดวิธีที่จะนำตำนานเดียว (เนื่องจากทั้ง 9 subplots มีบรรทัดเดียวกัน) บนภาพเพียงครั้งเดียว ฉันจะทำอย่างไร
166 python  matplotlib 

6
ฉันจะบอก matplotlib ว่าฉันทำกับพล็อตได้อย่างไร
โค้ดต่อไปนี้แปลงไฟล์ PostScript (.ps) สองไฟล์ แต่ไฟล์ที่สองมีทั้งสองบรรทัด import matplotlib import matplotlib.pyplot as plt import matplotlib.mlab as mlab plt.subplot(111) x = [1,10] y = [30, 1000] plt.loglog(x, y, basex=10, basey=10, ls="-") plt.savefig("first.ps") plt.subplot(111) x = [10,100] y = [10, 10000] plt.loglog(x, y, basex=10, basey=10, ls="-") plt.savefig("second.ps") ฉันจะบอก matplotlib ให้เริ่มต้นใหม่อีกครั้งสำหรับพล็อตที่สองได้อย่างไร
166 python  matplotlib  plot 

5
เตือนเกี่ยวกับตัวเลขที่เปิดกว้างเกินไป
ในสคริปต์ที่ฉันสร้างตัวเลขจำนวนมากfix, ax = plt.subplots(...)ฉันได้รับคำเตือนRuntimeWarning: เปิดตัวเลขมากกว่า 20 ตัว ตัวเลขที่สร้างผ่านส่วนต่อประสาน pyplot ( matplotlib.pyplot.figure) จะถูกเก็บไว้จนกว่าจะปิดอย่างชัดเจนและอาจใช้หน่วยความจำมากเกินไป แต่ผมไม่เข้าใจว่าทำไมฉันจะได้รับการแจ้งเตือนนี้เพราะหลังจากบันทึกภาพกับฉันลบมันด้วยfig.savefig(...) fig.clear(); del figที่จุดในรหัสของฉันไม่มีฉันเปิดมากกว่าหนึ่งรูปในเวลา ยังฉันได้รับคำเตือนเกี่ยวกับตัวเลขที่เปิดกว้างเกินไป นั่นหมายความว่าฉันจะหลีกเลี่ยงการรับคำเตือนได้อย่างไร

4
พล็อตเวลาใน Python ด้วย Matplotlib
ฉันมีอาเรย์ของการประทับเวลาในรูปแบบ (HH: MM: SS.mmmmmm) และอาเรย์ของตัวเลขจำนวนจุดลอยตัวอีกอันแต่ละอันสอดคล้องกับค่าในอาเรย์การประทับเวลา ฉันสามารถกำหนดเวลาบนแกน x และตัวเลขบนแกน y โดยใช้ Matplotlib ได้หรือไม่? ฉันพยายาม แต่อย่างใดมันก็แค่ยอมรับอาร์เรย์ของการลอย ฉันจะทำให้มันวางแผนเวลาได้อย่างไร ฉันต้องแก้ไขรูปแบบหรือไม่?
164 python  graph  plot  matplotlib 

7
การตั้งค่าสีที่แตกต่างสำหรับแต่ละชุดในพล็อตกระจายบน matplotlib
สมมติว่าฉันมีชุดข้อมูลสามชุด: X = [1,2,3,4] Y1 = [4,8,12,16] Y2 = [1,4,9,16] ฉันสามารถกระจายพล็อตนี้: from matplotlib import pyplot as plt plt.scatter(X,Y1,color='red') plt.scatter(X,Y2,color='blue') plt.show() ฉันจะทำสิ่งนี้กับ 10 เซ็ตได้อย่างไร ฉันค้นหาสิ่งนี้และสามารถค้นหาการอ้างอิงถึงสิ่งที่ฉันถาม แก้ไข: ทำให้กระจ่าง (หวังว่า) คำถามของฉัน หากฉันโทรกระจายหลายครั้งฉันสามารถตั้งค่าสีเดียวกันให้กับการกระจายแต่ละครั้งได้ นอกจากนี้ฉันรู้ว่าฉันสามารถตั้งค่าอาร์เรย์สีด้วยตนเอง แต่ฉันแน่ใจว่ามีวิธีที่ดีกว่าในการทำเช่นนี้ คำถามของฉันคือ "ฉันจะกระจายชุดข้อมูลหลายชุดของฉันโดยอัตโนมัติอย่างไรแต่ละชุดมีสีแตกต่างกัน หากช่วยได้ฉันสามารถกำหนดหมายเลขเฉพาะให้กับชุดข้อมูลแต่ละชุดได้อย่างง่ายดาย


7
ลดจำนวนการลงจุด
ฉันมีเห็บบนกราฟมากเกินไปและพวกมันก็วิ่งเข้าหากัน ฉันจะลดจำนวนเห็บได้อย่างไร ตัวอย่างเช่นฉันมีเห็บ: 1E-6, 1E-5, 1E-4, ... 1E6, 1E7 และฉันแค่ต้องการ: 1E-5, 1E-3, ... 1E5, 1E7 ฉันได้ลองเล่นด้วยLogLocatorแต่ฉันก็ไม่สามารถหาคำตอบได้
160 python  matplotlib 

11
วิธีลบเฟรมออกจาก matplotlib (pyplot.figure เทียบกับ matplotlib.figure) (frameon = ปัญหาที่เป็นเท็จใน matplotlib)
ในการลบเฟรมในรูปฉันเขียน frameon=False ทำงานได้อย่างสมบูรณ์แบบด้วย pyplot.figureแต่เมื่อmatplotlib.Figureลบพื้นหลังสีเทาออกเท่านั้นเฟรมจะยังคงอยู่ นอกจากนี้ฉันต้องการให้เส้นแสดงเท่านั้นและส่วนที่เหลือทั้งหมดของรูปจะโปร่งใส ด้วย pyplot ฉันสามารถทำสิ่งที่ฉันต้องการได้ฉันต้องการทำกับ matplotlib ด้วยเหตุผลบางอย่างที่ฉันไม่ต้องการพูดถึงเพื่อขยายคำถามของฉัน
160 python  matplotlib 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.