2013-11-07 2 views
-2

Я занимаюсь построением гистограмм ROOT с помощью rootpy и выполняю немного странную проблему. я получаю ROOT гистограмму с помощью:Метод «Клонировать» гистограммы в PyROOT/rootpy

Histo1 = FilePure.Get(HistoName + str("incl") + str(0)) 

Где Histoname это имя вещи мне нужно. Затем я хочу сделать два других гистограмм от этого, связанных с (значений ошибок), так что я «Клон» Histo1 дважды так:

HistoMin = Histo1.Clone();  HistoMax = Histo1.Clone(); 

Теперь, когда я выполнить операцию на исходном объекте Histo1 (в моем случае я am перемасштабирование каждого бина по постоянному коэффициенту), а затем распечатать значения всех трех гистограмм, значения в Histo1 И HistoMin изменились, но HistoMax не имеет! Я очень смущен, поэтому любая помощь будет оценена! Cheers, Jack

P.s. для пользователей, не являющихся членами ROOT/rootpy, которые, тем не менее, многое знают о python/OO, в общем, это ссылка на документ. для 'Clone()': http://root.cern.ch/root/html/TNamed.html#TNamed:Clone

ответ

0

Я думаю, что может быть ошибка в другом месте вашего кода, который вы не показываете.

Есть HistoMin как-то ссылается на Histo1 в другом месте вашего кода?

Я вижу правильное поведение (только оригинальная гистограмма изменённая):

>>> from rootpy.plotting import Hist 
>>> a = Hist(10, -3, 3) 
>>> a.FillRandom('gaus') 
>>> b = a.Clone() 
>>> c = a.Clone() 
>>> list(a.y()) 
[39.0, 136.0, 394.0, 796.0, 1131.0, 1106.0, 817.0, 397.0, 144.0, 40.0] 
>>> list(b.y()) 
[39.0, 136.0, 394.0, 796.0, 1131.0, 1106.0, 817.0, 397.0, 144.0, 40.0] 
>>> list(c.y()) 
[39.0, 136.0, 394.0, 796.0, 1131.0, 1106.0, 817.0, 397.0, 144.0, 40.0] 
>>> a *= 3 
>>> list(a.y()) 
[117.0, 408.0, 1182.0, 2388.0, 3393.0, 3318.0, 2451.0, 1191.0, 432.0, 120.0] 
>>> list(b.y()) 
[39.0, 136.0, 394.0, 796.0, 1131.0, 1106.0, 817.0, 397.0, 144.0, 40.0] 
>>> list(c.y()) 
[39.0, 136.0, 394.0, 796.0, 1131.0, 1106.0, 817.0, 397.0, 144.0, 40.0] 
+0

Нет Thats вещи нет никакой другой ссылки на него где-нибудь еще! Я думаю, что я решил это, хотя это было связано с тем, как я открывал гистограммы – JMzance

 Смежные вопросы

  • Нет связанных вопросов^_^