void graph_var_markers(TGraph *gr, double *size, double *col, double* type) { Int_t np = gr->GetN(); TMarker *m = new TMarker(); gr->SetMarkerStyle(1); gr->SetMarkerColor(0); gr->Draw("AP"); Double_t *gx = gr->GetX(); Double_t *gy = gr->GetY(); for (Int_t i =0; i < np; i++) { m->SetMarkerSize(size[i]); m->SetMarkerColor(col[i]); m->SetMarkerStyle(type[i]); m->DrawMarker(gx[i], gy[i]); } } void graph_var_points () { const int np = 6; TCanvas *c = new TCanvas(); double size[np] = {1, 2 ,3 ,4 ,5 ,6}; double col[np] = {6, 5, 4, 3, 2, 1}; double type[np] = {20, 21, 22, 23, 29, 33}; TGraph *gr = new TGraph(np); for (Int_t i =0; i < np; i++) { Double_t x = ((Double_t)(i+1))*0.5; Double_t y = TMath::Sin(x); gr->SetPoint(i, x, y); } graph_var_markers(gr, size, col, type); }