Log Scale on a Chart

Does anyone have a function to create a set of chart axis labels for a natural logarithm scale given minimum and maximum scales?

What chart system are you using?
There are a number of them, or if you’re rolling your own you’ll have to come up with something that works for you.

With ChartDirector MBS you can setLogScale

I am using ChartDirector, but I cannot use their log scale because I need the x-axis to be ln(x-x0) as opposed to ln(x). Any help would be greatly appreciated.

I have this for a scale with equally spaced ticks

Dim range as double
dim tickSpacing as double
dim tickValues() as double
dim niceMin as double
dim niceMax as Double
dim i as int8
Dim a as double

range = niceNum(maxPoint - minPoint, false)
tickSpacing = niceNum(range / (maxTicks - 1), true)
niceMin =floor((minPoint / tickSpacing) * tickSpacing)
niceMax =ceil((maxPoint / tickSpacing) * tickSpacing)

While a < niceMax
a = niceMin+tickSpacing*i
i = i + 1
tickValues.Append(a)
wend

return tickValues

But it looks bad for a log scale because the ticks are no longer equally spaced

Do you have a sample project showing the issue?

Max = 2000
Delta = 500

For i = 0 to 200
y = log(log(1/(1-MR(i))))
x = log(x(i)-Delta)
next

I want to plot on transformed axes, but with the tick labels in untransformed values. I can easily do this in ChartDirector, but I cannot determine tick values that are round numbers with nice spacing.