婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 基于Python繪制子圖及子圖刻度的變換等的問題

基于Python繪制子圖及子圖刻度的變換等的問題

熱門標簽:河北防封卡電銷卡 400電話辦理哪種 手機網頁嵌入地圖標注位置 開封自動外呼系統怎么收費 開封語音外呼系統代理商 天津電話機器人公司 地圖標注線上如何操作 電銷機器人的風險 應電話機器人打電話違法嗎

1、涉及到圖的對比會用到子圖形式展示

先看看效果

2、繪制代碼如下

accuracy_alexnet_clef = [78.05, 78.43, 78.65, 78.61, 78.69]
accuracy_resnet_clef  = [84.56, 84.84, 85.07, 85.01, 85.13]
accuracy_alexnet_office10 = [87.30, 87.57, 87.78, 87.72, 87.50]
accuracy_resnet_office10  = [96.31, 96.35, 96.62, 96.43, 96.15]
orders = ['2', '3', '5', '10', '20']
names = ['alexnet', 'resnet']
# 創建兩幅子圖
f, ax = plt.subplots(2,1,figsize=(6, 8))
# 第一根柱子偏移坐標
x = [i for i in range(len(orders))]
# 第二根柱子偏移坐標
x1 = [i + 0.35 for i in range(len(orders))]
# 兩幅子圖之間的間距
plt.subplots_adjust(wspace =0, hspace =0.4)
# 選擇第一幅圖
figure_1 = ax[0]
# 設置x軸偏移和標簽
figure_1.set_xticks([i+0.15 for i in x])
figure_1.set_xticklabels(orders)
# 設置y軸的范圍
figure_1.set_ylim(bottom=77,top=86)
# 繪制柱狀圖,x表示x軸內容,accuracy_alexnet_clef表示y軸的內容,alpha表示透明度,width表示柱子寬度
# label表示圖列
figure_1.bar(x, accuracy_alexnet_clef, alpha=0.7, width = 0.35, facecolor = '#4c72b0', label='Alexnet')
figure_1.bar(x1, accuracy_resnet_clef, alpha=0.7, width = 0.35, facecolor = '#dd8452', label='Resnet')
figure_1.set_ylabel('Accuracy%') # 設置y軸的標簽
figure_1.set_xlabel('Order') # 設置x軸的名稱
figure_1.set_title('Alexnet') # 設置圖一標題名稱
figure_1.legend() # 顯示圖一的圖例
# 選擇第二幅圖
figure_2 = ax[1]
figure_1.set_xticks([i+0.15 for i in x])
figure_1.set_xticklabels(orders)
figure_2.set_ylim(bottom=77,top=100)
figure_2.bar(x, accuracy_alexnet_office10,alpha=0.7,width = 0.35,facecolor = '#c44e52', label='Alexnet')
figure_2.bar(x1, accuracy_resnet_office10,alpha=0.7,width = 0.35,facecolor = '#5f9e6e', label='Alexnet')
# figure_2.bar(orders, accuracy_resnet_clef,alpha=0.7,width = 0.35,facecolor = '#dd8452')
figure_2.set_ylabel('Accuracy%')
figure_2.set_xlabel('Order')
figure_2.set_title('Resnet')
figure_2.legend()
f.suptitle('ImageCLEF_DA') # 設置總標題
plt.show()

補充:python使用matplotlib在一個圖形中繪制多個子圖以及一個子圖中繪制多條動態折線問題

在講解繪制多個子圖之前先簡單了解一下使用matplotlib繪制一個圖,導入繪圖所需庫matplotlib并創建一個等間隔的列表x,將[0,2*pi]等分為50等份,繪制函數sin(x)。當沒有給定x軸數值時,默認以下標作為x的值,如果x值確定,則繪圖時寫為plt.plot(x,y) 。

如若想要繪制一個圖時寫入標簽,則寫為plt.plot(x,y,label="figure1")。

from numpy import *
import matplotlib.pyplot as plt 
x = linspace(0, 2 * pi, 50)
plt.plot(sin(x))
plt.xlabel('x-label')
plt.ylabel('y-label', fontsize='large')
plt.title('title')

以下先將整體代碼插入,再分布講解:

import numpy as np
import matplotlib.pyplot as plt 
from matplotlib.ticker import MultipleLocator, FormatStrFormatter 
def minmax_value(list1):
    minvalue=min(list1)
    maxvalue=max(list1)
    return minvalue,maxvalue
plt.figure(figsize=(16,14),dpi=98)
xmajorLocator = MultipleLocator(1) #將x主刻度標簽設置為1的倍數
plt.rcParams['font.sans-serif']=['SimHei']  
plt.rcParams['axes.unicode_minus'] = False
p1 = plt.subplot(121)
p2 = plt.subplot(122)
#圖中展示點的數量
pointcount=5
x=[i for i in range(20)]
print(x)
y1=[i**2 for i in range(20)]
y2=[i*4 for i in range(20)]
y3=[i*3+2 for i in range(20)]
y4=[i*4 for i in range(20)]
for i in range(len(x)-1):
    if ipointcount:
        minx,maxx=minmax_value(x[:pointcount])
        minx,maxx=minmax_value(x[:pointcount])
        minyA,maxyA=minmax_value(y1[:pointcount])
        minyB,maxyB=minmax_value(y2[:pointcount])
        
        maxy1=max(maxyA,maxyB)
        miny1=min(minyA,minyB)
        p1.axis([minx,maxx,miny1,maxy1])
        p1.grid(True)
        A,=p1.plot(x[:pointcount],y1[:pointcount],"g-")
        B,=p1.plot(x[:pointcount],y2[:pointcount],"b-")
        #設置主刻度標簽的位置,標簽文本的格式
        p1.xaxis.set_major_locator(xmajorLocator)
        legend=p1.legend(handles=[A,B],labels=["圖1","圖2"])    
        
        
        minx,maxx=minmax_value(x[:pointcount])
        minx,maxx=minmax_value(x[:pointcount])
        minyA,maxyA=minmax_value(y3[:pointcount])
        minyB,maxyB=minmax_value(y4[:pointcount])
        
        maxy1=max(maxyA,maxyB)
        miny1=min(minyA,minyB)
        p2.axis([minx,maxx,miny1,maxy1])
        p2.grid(True)
        A,=p2.plot(x[:pointcount],y3[:pointcount],"r-")
        B,=p2.plot(x[:pointcount],y4[:pointcount],"y-")
        #設置主刻度標簽的位置,標簽文本的格式
        p2.xaxis.set_major_locator(xmajorLocator)
        legend=p2.legend(handles=[A,B],labels=["圖3","圖4"])  
    elif i>=pointcount:
        minx,maxx=minmax_value(x[i-pointcount:i])
        minx,maxx=minmax_value(x[i-pointcount:i])
        minyA,maxyA=minmax_value(y1[i-pointcount:i])
        minyB,maxyB=minmax_value(y2[i-pointcount:i])
        
        maxy1=max(maxyA,maxyB)
        miny1=min(minyA,minyB)
        p1.axis([minx,maxx,miny1,maxy1])
        p1.grid(True)
        A,=p1.plot(x[i-pointcount:i],y1[i-pointcount:i],"g-")
        B,=p1.plot(x[i-pointcount:i],y2[i-pointcount:i],"b-")
        #設置主刻度標簽的位置,標簽文本的格式
        p1.xaxis.set_major_locator(xmajorLocator)
        legend=p1.legend(handles=[A,B],labels=["圖1","圖2"])
        minx,maxx=minmax_value(x[i-pointcount:i])
        minx,maxx=minmax_value(x[i-pointcount:i])
        minyA,maxyA=minmax_value(y3[i-pointcount:i])
        minyB,maxyB=minmax_value(y4[i-pointcount:i])
        
        maxy1=max(maxyA,maxyB)
        miny1=min(minyA,minyB)
        p2.axis([minx,maxx,miny1,maxy1])
        p2.grid(True)
        A,=p2.plot(x[i-pointcount:i],y3[i-pointcount:i],"r-")
        B,=p2.plot(x[i-pointcount:i],y4[i-pointcount:i],"y-")
        #設置主刻度標簽的位置,標簽文本的格式
        p2.xaxis.set_major_locator(xmajorLocator)
        legend=p2.legend(handles=[A,B],labels=["圖3","圖4"])
    p1.set_xlabel("橫軸屬性名一",fontsize=14)
    p1.set_ylabel("縱軸屬性名一",fontsize=14)
    p1.set_title("主題一",fontsize=18)
    
    p2.set_xlabel("橫軸屬性名二",fontsize=14)
    p2.set_ylabel("縱軸屬性名二",fontsize=14)
    p2.set_title("主題二",fontsize=18)
    plt.pause(0.3)
    plt.tight_layout(pad=4, w_pad=4.0, h_pad=3.0)

運行結果為:

1、導入庫

import numpy as np
import matplotlib.pyplot as plt 
from matplotlib.ticker import MultipleLocator, FormatStrFormatter 

2、由于繪圖過程中多次使用獲取最大最小值,將獲取最大最小值寫入函數,后面直接調用函數即可。

def minmax_value(list1):
    minvalue=min(list1)
    maxvalue=max(list1)
    return minvalue,maxvalue

3、

(1)創建自定義圖像,并設置figured的長和寬以及dpi參數指定繪圖對象的分辨率;

(2)設置x軸刻度的間隔;

(3)對本次繪圖中的字體進行設置;

(4)在matplotlib下,一個figure對象可以包含多個子圖(Axes),使用subplot()快速繪制。

plt.figure(figsize=(16,14),dpi=98)xmajorLocator = MultipleLocator(1)
plt.rcParams['font.sans-serif']=['SimHei']  plt.rcParams['axes.unicode_minus'] = False
 
p1 = plt.subplot(121)p2 = plt.subplot(122)

4、當數據量過多時,對數據一次性展示不能夠達到對數據內部信息的解讀。本例采用一次展示其中一部分數據,并動態的更新圖片,于此同時,動態更新橫縱坐標軸的取值范圍。下面代碼首先設置了每次展示點的數量,并獲取了主題一中的所有數據值。根據x取值范圍和值域y獲取當前繪圖過程中的橫縱坐標取值范圍,最后根據x,y的值進行繪圖。

下面將先在一個子圖上顯示兩條靜態折現。當使用動態的折線圖時,只需動態更新數據和橫縱坐標的取值范圍。總體代碼中已經寫出,下面不再贅述。

#圖中展示點的數量
pointcount=5
x=[i for i in range(20)]
y1=[i**2 for i in range(20)]
y2=[i*4 for i in range(20)]
minx,maxx=minmax_value(x[:pointcount])
minyA,maxyA=minmax_value(y1[:pointcount])
minyB,maxyB=minmax_value(y2[:pointcount])
        
maxy1=max(maxyA,maxyB)
miny1=min(minyA,minyB)
p1.axis([minx,maxx,miny1,maxy1])
p1.grid(True)#繪圖過程中出現的網格設置
A,=p1.plot(x[:pointcount],y1[:pointcount],"g-")
B,=p1.plot(x[:pointcount],y2[:pointcount],"b-")#設置主刻度標簽的位置,標簽文本的格式p1.xaxis.set_major_locator(xmajorLocator)legend=p1.legend(handles=[A,B],labels=["圖1","圖2"])

結果如下所示:

5、設置邊界,不設置邊界經常會因為橫縱軸的字體太大等其他原因導致橫縱軸或者標題只能顯示其中一部分。

plt.tight_layout(pad=4, w_pad=4.0, h_pad=3.0)

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • python使用matplotlib:subplot繪制多個子圖的示例
  • Python figure參數及subplot子圖繪制代碼
  • python 實現在一張圖中繪制一個小的子圖方法
  • python繪制多個子圖的實例

標簽:駐馬店 蘭州 成都 江蘇 常州 山東 六盤水 宿遷

巨人網絡通訊聲明:本文標題《基于Python繪制子圖及子圖刻度的變換等的問題》,本文關鍵詞  基于,Python,繪制,子,圖,及,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《基于Python繪制子圖及子圖刻度的變換等的問題》相關的同類信息!
  • 本頁收集關于基于Python繪制子圖及子圖刻度的變換等的問題的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    成人av资源在线观看| 亚洲精品水蜜桃| 国产黄色精品网站| 一片黄亚洲嫩模| 国产欧美精品一区二区色综合朱莉 | 国产一区二区三区不卡在线观看| 亚洲乱码精品一二三四区日韩在线| 欧美电影免费观看高清完整版在| 在线视频国内一区二区| 一区二区三区四区在线| 亚洲少妇最新在线视频| 国产嫩草影院久久久久| www久久精品| 欧美大胆人体bbbb| 日韩一区二区三区观看| 欧美日韩精品二区第二页| 91老师片黄在线观看| 99re成人在线| 国产99久久久精品| 奇米精品一区二区三区在线观看| 亚洲国产乱码最新视频| 亚洲第一福利视频在线| 亚洲国产视频直播| 丝袜美腿亚洲一区| 首页国产欧美日韩丝袜| 日韩av电影免费观看高清完整版 | 国产在线播放一区| 国产一区二区在线影院| 国产一区欧美一区| 国产一区二区日韩精品| 极品尤物av久久免费看| 国产精品1区2区3区在线观看| 国产精品亚洲专一区二区三区| 国产精品小仙女| 成人毛片视频在线观看| 99久久综合国产精品| 91免费国产视频网站| 91精品91久久久中77777| 欧美日韩一区二区三区高清| 欧美亚洲国产一卡| 欧美一级黄色录像| 国产精品拍天天在线| 亚洲精品国产品国语在线app| 久久久久久久久伊人| 亚洲色图清纯唯美| 日韩和欧美的一区| 国产成人啪午夜精品网站男同| av不卡一区二区三区| 欧美日韩国产综合久久| 2024国产精品| 综合亚洲深深色噜噜狠狠网站| 亚洲欧洲性图库| 亚洲成人免费电影| 国产在线精品免费| 91麻豆国产精品久久| 精品久久久久久久久久久久包黑料 | 欧美三区免费完整视频在线观看| 欧美喷水一区二区| 久久久欧美精品sm网站| 一卡二卡三卡日韩欧美| 国产精品一级二级三级| 欧美三电影在线| 亚洲婷婷在线视频| 久久av资源网| 欧美日韩中文一区| 国产精品久久三区| 狠狠色狠狠色综合日日91app| 日本高清不卡视频| 日本一区二区电影| 香蕉加勒比综合久久| 国产主播一区二区| 97精品久久久午夜一区二区三区| 欧美日韩国产综合视频在线观看| 国产精品麻豆久久久| 久久精品国产亚洲a| 欧美日韩在线观看一区二区| 国产精品全国免费观看高清| 亚洲一区二区三区四区五区中文| 国产毛片精品一区| 日韩一区二区在线观看视频播放| 一区二区三区四区国产精品| 波多野结衣中文字幕一区| 日韩免费电影网站| 亚洲精品第一国产综合野| 极品少妇xxxx精品少妇| 欧美中文字幕一区| 国产精品毛片高清在线完整版| 午夜精品免费在线| 在线观看亚洲成人| 精品国产3级a| 三级一区在线视频先锋| 成人免费看黄yyy456| 日韩精品一区二区三区四区| 毛片av一区二区| 99久久精品免费| 日韩欧美综合在线| 亚洲一区二区三区在线| 国产成人99久久亚洲综合精品| 欧美一区二区三区啪啪| 精品少妇一区二区三区| 久久成人精品无人区| 在线观看欧美黄色| 久久久久国产免费免费| 国产婷婷精品av在线| 亚洲美女精品一区| 蜜桃视频在线一区| 欧美午夜电影一区| 综合久久久久综合| 国产成人av网站| 欧美成人bangbros| 日韩国产欧美三级| 欧美日韩在线三区| 一二三区精品视频| 色国产精品一区在线观看| 亚洲成人av资源| 欧美日韩亚洲综合在线| 亚洲精品成人少妇| 91老师国产黑色丝袜在线| 国产女人18水真多18精品一级做 | 亚洲丝袜制服诱惑| 成人av在线观| 久久久久久日产精品| 国产麻豆精品theporn| 久久久久国产精品麻豆ai换脸| 国产高清精品久久久久| 国产午夜精品一区二区三区视频| 成人在线综合网| 国产喂奶挤奶一区二区三区| 国产69精品久久久久777| 久久青草欧美一区二区三区| 久久精品av麻豆的观看方式| 日韩午夜激情av| 麻豆91小视频| 国产三级精品在线| 99麻豆久久久国产精品免费优播| 精品粉嫩超白一线天av| 色婷婷综合激情| 亚洲韩国一区二区三区| 欧美一区二区三区精品| 国产一区二区三区在线观看免费| 国产丝袜美腿一区二区三区| 黄色日韩三级电影| 一区二区三区欧美久久| 欧美怡红院视频| 日韩激情av在线| 亚洲精品一区二区精华| 丰满亚洲少妇av| 久久久久久一级片| 日韩女优电影在线观看| 成人一区二区三区在线观看 | 成人少妇影院yyyy| 亚洲一级在线观看| 精品国产亚洲在线| 69堂国产成人免费视频| 成人少妇影院yyyy| 亚洲福中文字幕伊人影院| 精品卡一卡二卡三卡四在线| 91在线免费看| 亚洲精品国产成人久久av盗摄| 久久久影院官网| 欧美午夜理伦三级在线观看| 国产在线一区二区综合免费视频| 成人欧美一区二区三区白人| 91精品国产美女浴室洗澡无遮挡| 极品少妇一区二区三区精品视频| 免费av网站大全久久| 国产精品久久久久毛片软件| 欧美一区二区在线视频| 波多野结衣精品在线| 免费欧美高清视频| 爽爽淫人综合网网站| 国产精品免费视频网站| 日韩欧美国产综合一区| 色综合婷婷久久| 国产乱子伦一区二区三区国色天香| 美腿丝袜亚洲三区| 亚洲www啪成人一区二区麻豆| 中文字幕精品一区| 日韩精品一区二区三区swag | 国产精品三级av| 欧美xxxxx牲另类人与| 色国产综合视频| 成人av午夜影院| 国产精品一区二区视频| 奇米色777欧美一区二区| 亚洲综合一区二区三区| 中文字幕一区二区三| 久久精品水蜜桃av综合天堂| 欧美三区在线观看| 日韩欧美国产综合在线一区二区三区 | 在线观看亚洲a| 99国产一区二区三精品乱码| 国产一区福利在线| 免费三级欧美电影| 亚洲精品欧美激情| 亚洲18色成人| 亚洲福利视频一区二区| 亚洲一区二区视频在线| 亚洲欧美偷拍三级| 亚洲日本一区二区三区|