您的位置:首页 > 其它

ROOT: Why TStyle::SetStatFontSize() doesn't work?

2013-08-28 02:33 543 查看
I need a larger statics font size, but it does't work:



Reason for this problem:

/*
* =====================================================================================
*
*       FILENAME:  SetStatFontSize.cpp
*
*        VERSION:  1.0
*        CREATED:  08/27/13 23:58:26
*   LAST CHANGED: 08/28/2013 02:08:48
*         AUTHOR:
*   ORGANIZATION:  HEP group @ PKU
*       COMPILER:  gcc
*
*    DESCRIPTION:  ROOT couldn't automatically resize the width of statics box,
*    so TStyle::SetStatFontSize() has no effect when the font's size is larger than
*    the box. Therefore, you'd better reset new width by calling TStyle::SetStatW()
*    whenever you call TStyle::SetStatFontSize(). Note: The height of the box can be
*    resize automatically.
*
* =====================================================================================
*/
#include <TH1D.h>
#include <TCanvas.h>
#include <TStyle.h>

void SetStatFontSize()
{
TH1D* h = new TH1D("h","h title",100,0,10.);
h->Fill(1);

TCanvas* c = new TCanvas("c","",500,500);
gStyle->SetStatFontSize(0.14);

//To make sure SetStatFontSize() does work, you need next statement:
gStyle->SetStatW(0.7);

h->Draw();
}
New output with above codes:



That's maybe a bug of TH class in ROOT.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: