标签: logarithm

在 Matplotlib 中以对数刻度将文本旋转到一行上

问题

我正在处理对数刻度的数据,并希望旋转它以适合一条线。我知道该模型,但不确定我应该插入哪个角度transform_angles以恢复正确的旋转。经过一些试验和错误后,我知道对于我需要的轴限制,答案大约是 10 度。

移动电源

import matplotlib.pylab as plt
import numpy as np

plt.clf()
plt.yscale('log')
plt.ylim((1e-11, 1e-1))  # Other data is usually plotted and these are the ranges I need. 
plt.xlim((-0.2, 7.2))
x_fit = np.linspace(0.8, 3.2, 1000)
y_ols = (lambda x: np.exp(np.log(2)*(-20.8 + -1.23 * x)))(x_fit)  # I get these numbers from OLS fitting. 
plt.plot(x_fit, y_ols, 'b-', dashes='', label='__nolegend__')
plt.gca().text(np.min(x_fit), 1.2*y_ols[0], r'$O(2^{{ {:.3}x }})$'.format(-1.23), rotation=-10).set_bbox(dict(facecolor='w', alpha=0.7, edgecolor='k', linewidth=0))  # There are several others lines which have been omitted. …
Run Code Online (Sandbox Code Playgroud)

python logarithm matplotlib rotation

3
推荐指数
1
解决办法
846
查看次数

python 中数据帧的简单日志:错误:“类型”对象不支持项目分配

我试图获取数据帧的日志并将其复制到 Python 中的新数据帧中,但出现此错误:“类型”对象不支持项目分配

import math
y = pd.DataFrame
y['Number'] = np.log(df.Number)
y
Run Code Online (Sandbox Code Playgroud)

python logarithm

3
推荐指数
1
解决办法
2505
查看次数

Python 3 中 math.log2(x) 的时间复杂度是多少?

正如标题所说,我想知道math.log2(x). 我知道可以用 O(1) 复杂度用 C 编写这样的函数,但是我找不到有关在 Python 中实现此函数的任何信息。

logarithm time-complexity python-3.x

3
推荐指数
1
解决办法
1969
查看次数

用C++实现带对数的运算符重载

我在使用C++中的运算符重载实现对数类时遇到了一些问题.

我的第一个目标是如何实现这个changeBase方法,我一直很难绕过它.

我试图理解改变对数基数背后的数学,但我无法做到.有人可以向我解释一下吗?

我的第二个目标是能够执行左操作数为a double且右操作数为对数对象的操作.

这是我的日志类的片段:

// coefficient: double
// base: unsigned int
// result: double
class _log {

 double coefficient, result;
 unsigned int base;

public:

 _log() {
  base = 10;
  coefficient = 0.0;
  result = 0.0;
 }
 _log operator+ ( const double b ) const;
 _log operator* ( const double b ) const;
 _log operator- ( const double b ) const;
 _log operator/ ( const double b ) const;
 _log operator<< ( const _log &b ); …
Run Code Online (Sandbox Code Playgroud)

c++ logarithm operator-overloading

2
推荐指数
1
解决办法
593
查看次数

对数和统一成本标准之间的差异

我有一些问题需要理解对数(Lcc)和统一(Ucc)成本标准之间的区别,以及如何在计算中使用它.

有人可以解释两者之间的区别,并可能显示如何计算像A + B*C这样的问题的复杂性

(是的,这是作业的一部分=))

感谢任何帮助!

/ Marthin

optimization logarithm

2
推荐指数
1
解决办法
2873
查看次数

为什么log和exp matlab函数会产生相反的结果?

为什么a是不一样bmatlab

a = signal;
b = exp(log(signal));
Run Code Online (Sandbox Code Playgroud)

如果我绘制a和b,信号不一样,有什么帮助吗?

matlab logarithm exponential

2
推荐指数
1
解决办法
2561
查看次数

在matplotlib中的方形绘图区域上绘制对数线性图

我想在matplotlib的方形绘图区域绘制一个对数y轴和一个线性x轴的图.我可以在正方形上绘制线性线性图和对数图,但是我使用的方法Axes.set_aspect(...)并没有用于对数线性图.有一个很好的解决方法吗?


正方形上的线性线性图:

from pylab import *
x = linspace(1,10,1000)
y = sin(x)**2+0.5
plot (x,y)
ax = gca()
data_aspect = ax.get_data_ratio()
ax.set_aspect(1./data_aspect)
show()
Run Code Online (Sandbox Code Playgroud)

方形线性线性图


广场上的对数图:

from pylab import *
x = linspace(1,10,1000)
y = sin(x)**2+0.5
plot (x,y)
ax = gca()
ax.set_yscale("log")
ax.set_xscale("log")
xmin,xmax = ax.get_xbound()
ymin,ymax = ax.get_ybound()
data_aspect = (log(ymax)-log(ymin))/(log(xmax)-log(xmin))
ax.set_aspect(1./data_aspect)
show()
Run Code Online (Sandbox Code Playgroud)

方形对数图


但是当我尝试使用对数线性图时,我没有得到方形区域,而是一个警告

from pylab import *
x = linspace(1,10,1000)
y = sin(x)**2+0.5
plot (x,y)
ax = gca()
ax.set_yscale("log")
xmin,xmax = ax.get_xbound()
ymin,ymax = ax.get_ybound()
data_aspect = (log(ymax)-log(ymin))/(xmax-xmin)
ax.set_aspect(1./data_aspect) …
Run Code Online (Sandbox Code Playgroud)

python logarithm matplotlib

2
推荐指数
1
解决办法
1103
查看次数

是否可以使用对数将数字转换为二进制?

我是CS的新生,我发现找到二进制数的划分方式很痛苦.是否可以使用log快速查找24,例如,二进制?

binary logarithm

2
推荐指数
1
解决办法
2255
查看次数

如何在Fortran中执行整数log2()?

一个显而易见的方法是:

integer function log2_i(val) result(res)
    implicit none
    integer, intent(IN) :: val

    if (val<0) then
        print *, "ERROR in log2_i(): val cannot be negative."
    else if (val==0) then
        print *, "ERROR in log2_i(): todo: return the integer equivalent of (-inf)..."
    else if (val==1) then
        res = 0
    else
        res = FLOOR( LOG(val+0.0d0)/LOG(2.0d0) )
    endif
end function log2_i
Run Code Online (Sandbox Code Playgroud)

使用Fortran的位移操作符有更好的方法吗?

这个问题几乎相同,但使用无符号整数.不幸的是,符号位将禁止使用相同的算法.

performance fortran bit-manipulation logarithm fortran90

2
推荐指数
1
解决办法
693
查看次数

math.log输出错误

我正在尝试计算到非常大的数字的最接近的2 ^ n(<= 10 ^ 19)

我试图使用math.log(number,2)。但这对于很大的数字给出了错误的结果。我应该如何在不使用其他库的情况下执行此操作?

a = 9843649374639837463  # a is any num between 1 and 10^9
number = int(math.log(a,2))
Run Code Online (Sandbox Code Playgroud)

python floating-point precision logarithm python-3.x

2
推荐指数
1
解决办法
77
查看次数