Как получить строковые имена переменных в python и несколько трюков с matplotlibe
Теги:
Как получить строкове имя переменной в python
Вернуть строкове имя конкретной переменной не получится. так как на один и тот же объект может ссылаться несколько переменных. Но можно вернуть все переменные для конкретного объета. В данном примере две разные переменные ссылаются на два разных объекта (которые под капотом python на самом деле один объект):
import inspect
x = 1
y = 1
def retrieve_name(var):
callers_local_vars = inspect.currentframe().f_back.f_locals.items()
return [var_name for var_name, var_val in callers_local_vars if var_val is var]
print(retrieve_name(y))
['x', 'y']
Как получить строкове значение имени функции в python
__name__
работает с build in функциями. func_name
нет
>>> import time
>>> time.time.func_name
Traceback (most recent call last):
File "<stdin>", line 1, in ?
AttributeError: 'builtin_function_or_method' object has no attribute 'func_name'
>>> time.time.__name__
'time'
Как удалить линии сетки в [matplotlibe]
так
plt.grid(None)
в ряде случаев, если создана сетка, может потребоваться проитерирвоать
for i in range(4):
for j in range(3):
axs[i, j].grid(None)
или так
%matplotlib inline
from matplotlib import pyplot as plt
plt.rcParams["axes.grid"] = False
Как задать размеры изображения для subplots в matplotlib
вот так, например:
fig, axs = plt.subplots(nrows=3, ncols=3)
fig.set_figheight(25)
fig.set_figwidth(25)
Читай еще тут: [matplotlib-size]
Как создать анотированную матрицу в matplotlib
Вот подробный гайд на эту тему. Если совсем лень, можно использовать seaborn.heatmap