- Код: Выделить всё
function TLogarithmAxisTransform.GraphToAxis(AX: Double): Double;
begin
Result := Power(Base, AX);
end;
Оно и понятно, 10 в степени 10000 это многовато. Вполне возможно, что такое решение "в лоб" неправильно, тогда как правильно?
Модератор: Модераторы
function TLogarithmAxisTransform.GraphToAxis(AX: Double): Double;
begin
Result := Power(Base, AX);
end;
Index: main.lfm
===================================================================
--- main.lfm (revision 31150)
+++ main.lfm (working copy)
@@ -225,13 +225,13 @@
Title.LabelFont.Orientation = 900
Title.Visible = True
Title.Caption = 'Left'
- Transformations = catLog
end
item
Alignment = calBottom
Title.Distance = 0
Title.Visible = True
Title.Caption = 'Bottom'
+ Transformations = catLog
end
item
Alignment = calRight
Index: main.pas
===================================================================
--- main.pas (revision 31150)
+++ main.pas (working copy)
@@ -146,7 +146,7 @@
for i := 0 to 50 do begin
with cfsLog.Extent do
x := i / 50 * (XMax - XMin) + XMin;
- clsLogPoints.AddXY(x + Random - 0.5, MyFunc(x) + Random - 0.5);
+ clsLogPoints.AddXY(x + i * 1000, MyFunc(x) + Random - 0.5);
end;
FillIndependentSource;
end;
Ask писал(а):Судя по картинке, дело не в гибкости, а в удачных значениях по умолчанию.
(Я, кстати, не совсем понимаю, чем хорошо неравномерное деление второго уровня
при равномерном делении первого уровня).
Boris писал(а): легче определять значения малых величин
Boris писал(а): вид сетки и метки интервалов определяются основанием логарифма
Boris писал(а):логический DisplayDecades.
Ask писал(а):Хм. Если вторичные деления сделать равномерными, то понять, что в левой части графика, будет ещё легче, нет?
Ask писал(а):Непонятно, как из основания 10 получить количество вторичных меток (в данном случае восемь)?
Что, если основание, скажем, e (натуральный логарифм)?
Ask писал(а):Boris писал(а):логический DisplayDecades.
Что он должен делать?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 230