用python的matplotlib根據文件里面的數字畫圖像折線圖


思路:用open打開文件,再用a=filename.readlines()提取每行的數據作為列表的值,然后傳遞列表給matplotlib並引入對應庫畫出圖像

代碼實現:
import matplotlib.pyplot as plt
n=0  #定義作為后面修改列表的索引
with open(r'C:\Users\Administrator\Desktop\test.txt') as text:
    a=text.readlines()  #提取文檔里面的每行作為列表的值:一行對應列表里的一個值
for i in a:
    i=i.rstrip()  #去分行符
    a[n]=int(i)  #轉化為整型,本身提取出來的是字符串,傳遞給畫圖函數會得不到實際效果
    n=n+1       #每循環一次更新索引,這樣就可以每次循環都更改列表里面的值
    print(i)      
print(a)
plt.plot(a)  #畫圖函數plt.plot(a,linewidth=5)>linewidth設置線條粗細
plt.title("cs") #設置標題,但是不支持文字
plt.xlabel("month",fontsize=14) 設置x軸標題欄 不支持文字
plt.ylabel("pay",fontsize=14) 設置y軸標題欄 不支持文字
plt.tick_params(axis='both',labelsize=14) 設置卡尺數字的大小
plt.axis([0,10,0,100])  # axis函數制定坐標軸范圍,要求四個參數,前兩個是X軸
plt.show()


import matplotlib.pyplot as plt

n=0
with open(r'C:\Users\Administrator\Desktop\test.txt') as text:
    a=text.readlines()
for i in a:
    i=i.rstrip()
    a[n]=int(i)
    n=n+1
    print(i)
print(a)
plt.plot(a,linewidth=5)
plt.title("cs")
plt.xlabel("month",fontsize=14)
plt.ylabel("pay",fontsize=14)
plt.tick_params(axis='both',labelsize=4)
plt.axis([0,10,0,100])
plt.show()


外部兩個表分別做x,y的實現

對應代碼
import matplotlib.pyplot as plt

#以外部兩個txt表分別作為x,y畫圖
n=0
m=0
with open(r'C:\Users\Administrator\Desktop\test.txt') as text:
    a=text.readlines()
with open(r'C:\Users\Administrator\Desktop\tet.txt') as tet:
    month=tet.readlines()
for i in a:
    i=i.rstrip()
    a[n]=int(i)
    n=n+1
    print(i)
for i in month:
    i=i.rstrip()
    month[m]=int(i)
    m=m+1
print(a)
print(month)
plt.plot(month,a,linewidth=5)#自定義x,y的取值范圍,以及線條粗細
plt.title("cs")
plt.xlabel("month",fontsize=14)
plt.ylabel("pay",fontsize=14)
plt.tick_params(axis='both',labelsize=10)

plt.show()


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM