-1
我有一個情節,一組應用程序上行/下行,分佈與CDF一起顯示,我想通過在其圖例中添加更多信息來改善情節,例如I希望它給我看每個變量, 點的數量的代碼,而不是顯示我:使用Matplotlib向圖例添加信息
--- Uplink
___ Downlink
我想看到這一點:
--- Uplink(54)
___ Downlink(88)
,其中54是繪製數點在這個上行鏈路中,其中88是t中繪製點的數量他的下行
這裏是我的代碼,我想提高:
import csv
import matplotlib.pyplot as plt
import pylab
#---Reading from a csv file
def getColumn(filename, column):
results = csv.reader(open(filename), delimiter="\t")
return [result[column] for result in results]
#---the cdf Function
def cdf(inputList):
outputList = []
inputList.sort()
for i in range(0, len(inputList)):
outputList.append([inputList[i], (i+1.0)/len(inputList)])
return outputList
#--getting the data i want from the csv file
fgfS=getColumn("dataFG.csv",2)
bgfS=getColumn("dataBG.csv",2)
fgifS=getColumn("dataiFG.csv",2)
bgifS=getColumn("dataiBG.csv",2)
#---the points to plot:
fgfS1=[]
fgfS2=[]
for i in cdf(map(float,fgfS)):
fgfS1.append(i[0])
fgfS2.append(i[1])
bgfS1=[]
bgfS2=[]
for i in cdf(map(float,bgfS)):
bgfS1.append(i[0])
bgfS2.append(i[1])
fgifS1=[]
fgifS2=[]
for i in cdf(map(float,fgifS)):
fgifS1.append(i[0])
fgifS2.append(i[1])
bgifS1=[]
bgifS2=[]
for i in cdf(map(float,bgifS)):
bgifS1.append(i[0])
bgifS2.append(i[1])
fig2, (ax2,ax02) = plt.subplots(1,2, sharey=True)
labels=('Uplink','Downlink')
fig2.suptitle('Applications Down/Up link', fontsize=20)
#******************
ax2.set_title('App 1')
#ax2.set_xlabel('seconds')
ax2.set_ylabel('CDF')
ax2.grid(True)
ax2.plot(fgfS1,fgfS2, 'b')
ax2.plot(bgfS1,bgfS2, 'c')
ax2.set_xscale('log')
ax2.legend(labels,loc='best')
#******************
ax02.set_title('App 3')
ax02.set_xlabel('seconds')
ax02.set_ylabel('CDF')
ax02.grid(True)
ax02.plot(fgifS1,fgifS2, 'b')
ax02.plot(bgifS1,bgifS2, 'c')
ax02.set_xscale('log')
ax02.legend(labels,loc='best')
所以我想補充LEN(bgfS1)爲例,但我仍然奧斯卡最佳噸弄清楚在何處以及如何....
你的問題不涉及CDF,你提供太多不相干的代碼。基本上你想要的是用圖例顯示附加信息 - 這是一個有效的問題,如果你的答案和代碼是簡明扼要的,而不僅僅是整個代碼,你將增加獲得答案的機會。 – Korem