Enabling a Logarithmic Scale

How to:

On a numeric axis, the bIsLog property enables or disables a logarithmic scale.


Top of page

x
Syntax: How to Enable a Logarithmic Scale
axisname: {
  bIsLog: boolean  }  

where:

axisname

Specifies the numeric axis for the logarithmic scale. Valid values are:

  • xaxis
  • yaxis
  • y2axis
boolean

Can be:

  • true, which enables a logarithmic scale on the numeric axis.
  • false, which disables a logarithmic scale on the numeric axis. This is the default value.


Example: Enabling a Logarithmic Scale on a Numeric Axis

The following request against the EMPLOYEE data source generates salaries that differ by orders of magnitude, places employees into categories based on these salaries, and generates a line chart with a numeric y-axis that represents this new salary value:

DEFINE FILE EMPLOYEE
SAL2 = IF CURR_SAL GT 10000 AND CURR_SAL LT 15000 THEN CURR_SAL * 10 
      ELSE IF CURR_SAL GT 15000 AND CURR_SAL LT 20000 THEN CURR_SAL * 100
      ELSE IF CURR_SAL GT 20000 AND CURR_SAL LT 25000 THEN CURR_SAL * 1000
      ELSE IF CURR_SAL GT 25000 THEN CURR_SAL * 10000
      ELSE CURR_SAL;
CATEGORY = IF CURR_SAL GT 10000 AND CURR_SAL LT 15000 THEN 2 
      ELSE IF CURR_SAL GT 15000 AND CURR_SAL LT 20000 THEN 3
      ELSE IF CURR_SAL GT 20000 AND CURR_SAL LT 25000 THEN 4
      ELSE IF CURR_SAL GT 25000 THEN 5
      ELSE 1;
END
GRAPH FILE EMPLOYEE
SUM SAL2
BY CATEGORY
ON GRAPH PCHOLD FORMAT JSCHART
ON GRAPH SET LOOKGRAPH VLINE
ON GRAPH SET STYLE *
INCLUDE=ENIADefault_combine.sty,$
ENDSTYLE
END

The output is:

The following version of the request enables a logarithmic scale on the y-axis:

DEFINE FILE EMPLOYEE
SAL2 = IF CURR_SAL GT 10000 AND CURR_SAL LT 15000 THEN CURR_SAL * 10 
      ELSE IF CURR_SAL GT 15000 AND CURR_SAL LT 20000 THEN CURR_SAL * 100
      ELSE IF CURR_SAL GT 20000 AND CURR_SAL LT 25000 THEN CURR_SAL * 1000
      ELSE IF CURR_SAL GT 25000 THEN CURR_SAL * 10000
      ELSE CURR_SAL;
CATEGORY = IF CURR_SAL GT 10000 AND CURR_SAL LT 15000 THEN 2 
      ELSE IF CURR_SAL GT 15000 AND CURR_SAL LT 20000 THEN 3
      ELSE IF CURR_SAL GT 20000 AND CURR_SAL LT 25000 THEN 4
      ELSE IF CURR_SAL GT 25000 THEN 5
      ELSE 1;
END
GRAPH FILE EMPLOYEE
SUM SAL2
BY CATEGORY
ON GRAPH PCHOLD FORMAT JSCHART
ON GRAPH SET LOOKGRAPH VLINE
ON GRAPH SET STYLE *
*GRAPH_JS
yaxis:  {bIsLog:true}    
*END
INCLUDE=ENIADefault_combine.sty,$
ENDSTYLE
END

On the generated chart output, the y-axis scale is logarithmic, making the rates of change between the categories easier to understand:


WebFOCUS