38 lines
920 B
Python
38 lines
920 B
Python
#!/usr/bin/env python3
|
|
|
|
from math import log, log10
|
|
import matplotlib.pyplot as plt
|
|
|
|
# If error ImportError: numpy.core.multiarray failed to import
|
|
# Unintall numpy: pip3 uninstall numpy
|
|
# Install version pip3 install "numpy<2"
|
|
|
|
LOG_MAX=100
|
|
LOG_MAX_NEGATIVE=10
|
|
|
|
fig, ax = plt.subplots()
|
|
ax.axhline(y=0, color="black", linestyle=":")
|
|
x = list()
|
|
ybe = list()
|
|
y10 = list()
|
|
y2 = list()
|
|
|
|
for i in range(1, LOG_MAX_NEGATIVE):
|
|
x.append(i/LOG_MAX_NEGATIVE)
|
|
ybe.append(log(i/LOG_MAX_NEGATIVE))
|
|
y10.append(log(i/LOG_MAX_NEGATIVE, 10))
|
|
y2.append(log(i/LOG_MAX_NEGATIVE, 2))
|
|
|
|
for i in range(1, LOG_MAX):
|
|
# print(log(i))
|
|
x.append(i)
|
|
ybe.append(log(i)) # By default, base e
|
|
y10.append(log(i, 10))
|
|
y2.append(log(i, 2))
|
|
|
|
ax.plot(x, ybe, linewidth=2, label=r"$log_e$")
|
|
ax.plot(x, y10, linewidth=2, label=r"$log_{10}$")
|
|
ax.plot(x, y2, linewidth=2, label=r"$log_{2}$")
|
|
ax.legend(fontsize=14)
|
|
plt.show()
|