日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python3-matplotlib基本使用(以折线图为例)

發布時間:2024/9/27 python 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python3-matplotlib基本使用(以折线图为例) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、什么是matplotlib

Matplotlib 是 Python 中最受歡迎的數據可視化軟件包之一,支持跨平臺運行,它是 Python 常用的 2D 繪圖庫,同時它也提供了一部分 3D 繪圖接口。Matplotlib 通常與 NumPy、Pandas 一起使用,是數據分析中不可或缺的重要工具之一。
Matplotlib 是 Python 中類似 MATLAB 的繪圖工具。MATLAB是美國MathWorks公司出品的商業數學軟件,用于數據分析、無線通信、深度學習、圖像處理與計算機視覺、信號處理、量化金融與風險管理、機器人,控制系統等領域。
matplotlib 支持的圖形 https://matplotlib.org/stable/gallery/index.html

2、基礎使用(以下都以折線圖為例)

from matplotlib import pyplot as plt # 繪圖導入 pyplot 一般會重命名為plt # 展示每隔兩個小時的溫度變化 x = range(2,26,2) # [2,4,6,8 ... ,22,24] y = [15,13,14.5,17,20,25,26,26,24,22,18,15] # 繪圖 plt.plot(x,y) # 展示圖形 plt.show()


上面圖片存在的問題:

  • 圖片的大小(想要高清大圖)
  • 保存到本地
  • 描述信息,比如x,y軸表示什么
  • 調整刻度的間距
  • 線條的樣式(顏色、透明度)
  • 標記出特殊的點(比如最高點,最低點)
  • 給圖片加水印,防偽

3、設置圖片寬高、分辨率、xy軸刻度、保存圖片到本地

from matplotlib import pyplot as plt # 繪圖導入 pyplot 一般會重命名為plt# 展示每隔兩個小時的溫度變化 x = range(2,26,2) # [2,4,6,8 ... ,22,24] y = [15,13,14.5,17,20,25,26,26,24,22,18,15]""" figure 指的是我們畫的圖 figsize 寬 高 dpi 沒英寸多少個點,點多了,放大后不會模糊,有鋸齒形 """ plt.figure(figsize=(20, 8), dpi=80)# 繪圖 plt.plot(x,y)# 設置x軸刻度 # plt.xticks(x) xticks_lables = [i/2 for i in range(4, 49)] # plt.xticks(xticks_lables) plt.xticks(xticks_lables[::3]) # 太密集了,可以每三個取一個 # 設置y軸刻度 plt.yticks(range(min(y), max(y)+1)) # 設置刻度顏色,設置刻度傾斜等 參考 https://blog.csdn.net/Poul_henry/article/details/82590392# 保存 # plt.savefig("./sig_size.png") # plt.savefig("./sig_size.svg") # 可以保存為svg矢量圖格式,放大不會有鋸齒# 展示圖形 plt.show()

4、X,y軸顯示字符串并旋轉顯示

顯示10點到12點每分鐘氣溫變化

from matplotlib import pyplot as plt import randomx = range(0, 120) y = [random.randint(20, 35) for i in range(120)]plt.figure(figsize=(15, 8), dpi=80)plt.plot(x,y)# 調整x 軸的刻度 xtick_lables = ["10:{}".format(i) for i in range(60)] xtick_lables += ["11:{}".format(i) for i in range(60)]# plt.xticks(list(x)[::3], xtick_lables[::3],rotation=270) # rotation 旋轉的度數 plt.xticks(list(x)[::3], xtick_lables[::3],rotation=60) # rotation 旋轉的度數yticks_lables = ["{}tem".format(i) for i in range(15, 40, 2)] plt.yticks(range(15, 40, 2), yticks_lables,rotation=60)plt.show()

5、X,y軸顯示中文并設置字體大小

如果不設置,中文不能正常顯示
針對Windows ,字體存放位置 C:\Windows\Fonts
linux/mac可以參考: https://www.bilibili.com/video/BV1hx411d7jb?p=6
也可以參考: https://www.runoob.com/numpy/numpy-matplotlib.html

from matplotlib import pyplot as plt import random from matplotlib import font_managermy_font = font_manager.FontProperties(fname=r"C:\Windows\Fonts\SIMLI.TTF", size=12)x = range(0, 120) y = [random.randint(20, 35) for i in range(120)]plt.figure(figsize=(15, 8), dpi=80)plt.plot(x,y)# 調整x 軸的刻度 xtick_lables = ["10:{}".format(i) for i in range(60)] xtick_lables += ["11:{}".format(i) for i in range(60)]# plt.xticks(list(x)[::3], xtick_lables[::3],rotation=270) # rotation 旋轉的度數 plt.xticks(list(x)[::3], xtick_lables[::3],rotation=60) # rotation 旋轉的度數yticks_lables = ["{}度".format(i) for i in range(15, 40, 2)] plt.yticks(range(15, 40, 2), yticks_lables,rotation=60,fontproperties=my_font)plt.show()

6、設置XY軸和標題的描述信息并繪制網格

from matplotlib import pyplot as plt import random from matplotlib import font_managermy_font = font_manager.FontProperties(fname=r"C:\Windows\Fonts\SIMLI.TTF", size=12)x = range(0, 120) y = [random.randint(20, 35) for i in range(120)]plt.figure(figsize=(15, 8), dpi=80)plt.plot(x,y)# 調整x 軸的刻度 xtick_lables = ["10:{}".format(i) for i in range(60)] xtick_lables += ["11:{}".format(i) for i in range(60)]# plt.xticks(list(x)[::3], xtick_lables[::3],rotation=270) # rotation 旋轉的度數 plt.xticks(list(x)[::3], xtick_lables[::3],rotation=60) # rotation 旋轉的度數yticks_lables = ["{}度".format(i) for i in range(15, 40, 2)] plt.yticks(range(15, 40, 2), yticks_lables,rotation=60,fontproperties=my_font)# 添加描述信息 plt.xlabel("時間",fontproperties=my_font) plt.ylabel("溫度 單位(℃)",fontproperties=my_font) plt.title("10點到12點每分鐘的氣溫變化情況",fontproperties=my_font)# 繪制網格 plt.grid(alpha=0.9) # alpha 可以調整透明度,數值越大越清晰plt.show()

7、同時繪制出兩條折線并添加圖例、設置折線顏色,折線樣式

from matplotlib import pyplot as plt from matplotlib import font_manager""" a 是自己 b 是同桌 x 軸是年齡 y 軸是女朋友的數量 """ a = [1,0,2,1,5,2,3,6,9,5,1,2,3,1,2,3,2,1,2,1] b = [1,3,1,1,2,1,1,1,4,4,4,2,2,2,4,1,1,4,1,2]x = range(11, 31)my_font = font_manager.FontProperties(fname=r"C:\Windows\Fonts\SIMLI.TTF", size=12)# 設置圖形大小 plt.figure(figsize=(15, 8), dpi=80)# plot 增加 label 和 plt.legend() 可以顯示tuli # plot 增加 color 可以修改 線條顏色 # linestyle 線條風格 linestyle 也適用于繪制網格 # - 實線 -- 虛線 -. 點劃線 : 點虛線 "" 留空或者空格無線條 # linewidth 線條粗細 # alpha 透明度 plt.plot(x, a, label="自己", color="orange", linestyle="--", linewidth=3, alpha=0.3) plt.plot(x, b, label="同桌", color="#FF69B4", linestyle="-.",linewidth=6, alpha=0.6)# 設置x刻度 xtick_labels = ["{}歲".format(i) for i in x] plt.xticks(x, xtick_labels, fontproperties=my_font) plt.yticks(range(0,11))# 繪制網格 linestyle 也適用于繪制網格 plt.grid(alpha=0.6, linestyle="--")# 添加圖例 prop 顯示中文,只有這里是 prop其他地方都是 fontproperties # loc="upper left" 參數可以修改 圖例位置 默認是右上 plt.legend(prop=my_font,loc="upper left")plt.show()

8、標記最高(低)點,添加水印

其他 圖像添加image水印、圖像添加背景 可 參考 https://zhuanlan.zhihu.com/p/390880393

from matplotlib import pyplot as plt from matplotlib import font_manager""" a 是自己 b 是同桌 x 軸是年齡 y 軸是女朋友的數量 """ a = [1,0,2,1,5,2,3,6,9,5,1,2,3,1,2,3,2,1,2,1] b = [1,3,1,1,2,1,1,1,4,4,4,2,2,2,4,1,1,4,1,2]x = range(11, 31)my_font = font_manager.FontProperties(fname=r"C:\Windows\Fonts\SIMLI.TTF", size=12)# 設置圖形大小 plt.figure(figsize=(15, 8), dpi=80)# plot 增加 label 和 plt.legend() 可以顯示tuli # plot 增加 color 可以修改 線條顏色 # linestyle 線條風格 linestyle 也適用于繪制網格 # - 實線 -- 虛線 -. 點劃線 : 點虛線 "" 留空或者空格無線條 # linewidth 線條粗細 # alpha 透明度 plt.plot(x, a, label="自己", color="orange", linestyle="--", linewidth=3, alpha=0.3) plt.plot(x, b, label="同桌", color="#FF69B4", linestyle="-.",linewidth=6, alpha=0.6)# 設置x刻度 xtick_labels = ["{}歲".format(i) for i in x] plt.xticks(x, xtick_labels, fontproperties=my_font) plt.yticks(range(0,11))# 標價最高點, 標記最高點;注意:x軸和y軸的索引必須相對應 # mark表示圓圈標記,edgecolors表示圓圈的顏色,s表示標記點的大小 # plt.scatter(x[8], a[8], color='b') plt.scatter(x[8], a[8], color='b', marker='o', edgecolors='r', s=300)# 添加文本水印 其他 圖像添加image水印 圖像添加背景 可 參考 https://zhuanlan.zhihu.com/p/390880393 plt.text(x=15, #文本x軸坐標y=5, #文本y軸坐標s='hello world', #文本內容rotation=15, #文字旋轉角度ha='center', #x=2.2是文字的左端位置,可選'center', 'right', 'left'va='center', #y=8是文字的低端位置,可選'center', 'top', 'bottom', 'baseline', 'center_baseline'alpha=0.5,fontdict=dict(fontsize=32,color='grey',family='monospace', #字體,可選'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'weight='light', #磅值,可選'light', 'normal', 'medium', 'semibold', 'bold', 'heavy', 'black') #字體屬性設置 )# 繪制網格 linestyle 也適用于繪制網格 plt.grid(alpha=0.6, linestyle="--")# 添加圖例 prop 顯示中文,只有這里是 prop其他地方都是 fontproperties # loc="upper left" 參數可以修改 圖例位置 默認是右上 plt.legend(prop=my_font,loc="upper left")plt.show()

https://www.bilibili.com/video/BV1hx411d7jb?p=3
https://www.bilibili.com/video/BV1hx411d7jb?p=4
https://www.bilibili.com/video/BV1hx411d7jb?p=5
https://www.bilibili.com/video/BV1hx411d7jb?p=6 設置中文顯示
https://www.bilibili.com/video/BV1hx411d7jb?p=7
https://www.bilibili.com/video/BV1hx411d7jb?p=8

總結

以上是生活随笔為你收集整理的python3-matplotlib基本使用(以折线图为例)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精品免费无遮挡无码永久视频 | 久久人人爽人人爽人人片av免费 | 女女爱爱视频 | 日韩精品第一页 | 超碰91在线观看 | 亚洲一卡二卡在线 | www.操操操 | 婷婷午夜激情 | 九九爱国产 | 午夜黄色剧场 | 91福利视频免费观看 | 国产网站在线免费观看 | 欧美一区二区影院 | 黄色二级毛片 | 中文字幕超清在线免费观看 | 欧美第五页 | www.奇米.com | 国产成人无码一区二区三区在线 | 国产网站精品 | 超碰免费在 | 久草资源网| 国产成人综合在线观看 | 亚洲一区二区视频 | 中文字幕日韩经典 | 亚洲精品中文无码AV在线播放 | 亚洲国产一区二区三区a毛片 | 国产av无码专区亚洲av麻豆 | 成人av亚洲| 中文字幕人成人乱码亚洲电影 | 国产三级视频在线播放 | 日本色呦呦 | 韩国三级中文字幕hd浴缸戏 | 操小妞| 人人看人人做 | 成人28深夜影院 | 婷婷超碰 | 国产丰满大乳奶水在线视频 | 中文字幕人妻互换av久久 | 免费观看污视频 | 亚洲a在线播放 | 在线观看黄色 | 国产精品美女久久 | 日本一区二区欧美 | 欧美成人免费在线观看视频 | 亚洲美女一区二区三区 | 超碰在线观看免费 | 国产又粗又猛又黄又爽 | 欧美在线一区二区三区四区 | 亚洲a网站 | 国语对白自拍 | 亚洲综合射 | 成人aaa| 毛毛毛片| 日韩免费在线看 | 在线黄av | 午夜av一区二区三区 | 中国女人一级一次看片 | 成人av免费网站 | 91黄址| 性按摩玩人妻hd中文字幕 | 一区二区视频免费在线观看 | 国产日韩欧美一区二区东京热 | 国产欧美一区二区三区鸳鸯浴 | 美国美女黄色片 | 香蕉视频毛片 | 亚洲黄色精品视频 | 欧美性视频在线 | 18禁网站免费无遮挡无码中文 | 一区二区三区亚洲视频 | 日韩一卡二卡三卡四卡 | 日中文字幕 | 人与禽性7777777 | 乌克兰性极品xxxhd | 国产精品国产三级国产播12软件 | 拍国产真实乱人偷精品 | 无码人妻精品一区二区三区66 | 色综合婷婷 | 欧美日韩国产一区二区三区在线观看 | 91欧美在线 | 国产一区在线观看视频 | 日韩永久 | 免费91视频 | 91麻豆产精品久久久久久夏晴子 | 韩国日本中文字幕 | 欧美大片aaa | 欧美人妻精品一区二区免费看 | 日本黄色三级视频 | 欧美性做爰大片免费 | 99精品久久毛片a片 成人网一区 | 久久久久人妻精品色欧美 | 精品人体无码一区二区三区 | 久久久网站 | 国产成人无码性教育视频 | 久久成年人视频 | 成人一区二区av | 俺也去五月婷婷 | 操操操操操操操操操 | 99久久精品免费看国产四区 | 欧美亚洲免费 |