2013-11-21 1 views
4

함수의 'cdf'(누적 분포)에 대한 히스토그램을 만들었습니다. 히스토그램은 기본적으로 개수 대 광도입니다. 이제 어떻게 히스토그램에서 데이터 포인트를 추출합니까? 광도의 실제 값이 필요합니다. Python에서 Matplotlib을 사용하고 있으며 온라인 설명서, 예제, 자습서 등이 도움이되지 않습니다.파이썬에서 히스토그램의 데이터 포인트 가져 오기

l= [ss.gammainccinv(aa+1, u[i]) for i in a] #is the cdf function 
plt.hist(l, 50, histtype= 'step', align='mid') #is the histogram 
plt.show() 

가장자리 나 중간 점에 용지함을 정렬해야하는지 잘 모르겠지만 목록은 모두 필요합니다.

의견을 보내 주시면 대단히 감사하겠습니다.

답변

8

당신은 이미 l의 목록을 가지고 있습니다. 그래서 나는 그 마지막 진술로 무엇을 의미하는지 확신 할 수 없습니다, 그래서 아마도 질문을 잘못 해석했을 것입니다.

히스토그램에서 값을 가져 오려면 plt.hist이 값을 반환하므로 저장하면됩니다.

당신이 그들을 저장하지 않는 경우는, 인터프리터 그냥 출력 인쇄 : 그래서

In [34]: x = np.random.rand(100) 

In [35]: plt.hist(x) 
Out[35]: 
(array([ 11., 9., 10., 6., 8., 8., 10., 10., 11., 17.]), 
array([ 0.00158591, 0.100731 , 0.19987608, 0.29902116, 0.39816624, 
     0.49731133, 0.59645641, 0.69560149, 0.79474657, 0.89389165, 
     0.99303674]), 
<a list of 10 Patch objects>) 

을, 그들을 저장, 수행

counts, bins, bars = plt.hist(x) 
+0

그래, 내가 할하는 데 필요한 모든했다 "인쇄 l "대신"print l [i] "를 사용하십시오. 그것은 단지 배열에서 첫 번째 숫자를주었습니다. 또는 숫자. 어리석은 실수로부터 배우십시오. 고맙습니다! :) – user3014593

관련 문제