double amplitude(double x, int *flag)
{
*flag=0;
return x/sqrt(1+x*x);
}
double phase(double x,int *flag)
{
*flag=0;
return 90-atan(x)*180/3.141592653589;
}
-(void)awakeFromNib
{
xaxis = [[PHxAxis alloc] initWithStyle:
PHIsLog | PHShowGrid | PHShowGraduationAtBottom | PHShowGraduationAtTop];
[xaxis setMinimum:-1 maximum:3];
yAmplitudeAxis = [[PHyAxis alloc] initWithStyle:
PHIsLog | PHShowGrid | PHShowGraduationAtLeft];
[yAmplitudeAxis setMinimum:-3 maximum:1];
[yAmplitudeAxis setColor:[NSColor blueColor]];
yPhaseAxis = [[PHyAxis alloc] initWithStyle: PHShowGraduationAtRight];
[yPhaseAxis setMinimum:-200 maximum:200];
[yPhaseAxis setColor:[NSColor redColor]];
[yPhaseAxis setMajorTickWidth:90];
[yPhaseAxis setMinorTicksNumber:9];
[graphView addPHxAxis:xaxis];
[graphView addPHyAxis:yAmplitudeAxis];
[graphView addPHyAxis:yPhaseAxis];
[graphView setMouseEventsMode:PHCompositeZoomAndDrag];
PHFunctionGraph* fonctionGraph1 = [[PHFunctionGraph alloc]
initWithXAxis:xaxis yAxis:yAmplitudeAxis function:amplitude];
[fonctionGraph1 setColor:[NSColor blueColor]];
PHFunctionGraph* fonctionGraph2 = [[PHFunctionGraph alloc]
initWithXAxis:xaxis yAxis:yPhaseAxis function:phase];
[fonctionGraph2 setColor:[NSColor redColor]];
[graphView addPHGraphObject:fonctionGraph1];
[graphView addPHGraphObject:fonctionGraph2];
[graphView setDelegate:self];
}