GithubHelp home page GithubHelp logo

okaclass's Introduction

OKA Class for ROOT

ROOTで使うための自作クラス。今のところTGraphErrorsを継承してるOGraphというクラスがTGraphErrorsよりも簡単に軸ラベルとプロット範囲を変えれるという機能のみ。初めて自分でクラス追加したので間違いがたくさんあるかも。

#使い方 ##ビルド

Makefile の書き方はまだ勉強中。あとLinkDef.hの書き方もよくわからない。OGraphを使うには、Makefileのあるディレクトリで

make OGraph

する (初めてのときは mkdir lib してから)。すると同じディレクトリにOH1Dict.cxx, OH1Dict.hが作られる(邪魔なので別のディレクトリにつくりたいがやり方が分からない)。さらにlib以下にlibOGraph.soがつくられる。このライブラリファイルをROOTで読みこめばよい。

##ライブラリファイルの読み込み CINTで使うには、.bashrcとかに

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ROOTSYS/lib:$HOME/git/OkaClass/lib

と書いて、OkaClass/lib以下をロードできるようにする(ここでは~/git以下にOkaClassを置いた)。ROOTを開いたら、

gSystem.Load("libOGraph.so")   

とすればOGraphのライブラリが読み込まれる (.rootlogon.C に書いてもよい)。また、ファイルを直接指定して、

.L ~/git/OkaClass/lib/libOGraph.so

としても行ける?

#クラス ##OH1 TH1Dを継承している。今のところ宣言しただけで追加機能なし。

##OGraph TGraphErrorsを継承している。 ###メソッド ####軸ラベルの変更

OGraph::SetXTitle(char* title)
OGraph::SetYTitle(char* title)

でX軸、Y軸のラベルを変えられる。TGraphとかだとGetXaxis()->SetTitle("title")とかしないと行けないので一手間減る。 ####プロット範囲の変更 TGraphでの範囲の変更は
How to set ranges on axis ? | ROOT
の一番下に書いてあるけどとても覚えられたものではないので、分かりやすくした。

OGraph::SetXRange(Double_t ufirst, Double_t ulast)
OGraph::SetYRange(Double_t ufirst, Double_t ulast)

でできる。変数ufirstとかのuは多分userのu。

#参考リンク 以下の情報を参考にさせて頂きました。 ##Official

##Unofficial


以下メモ。

#To Do的な

  • Dictファイルの位置をどうにかしたい
  • ライブラリをひとつにまとめたい
    • $ROOTSYS/testでは各々にDictがあってlibも個別にあるのでそれが普通なのかな。
  • LinkDef.hはこれでいいのかわからないけど一つで事足りたのでこうしておく。

okaclass's People

Contributors

pn11 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.