Я пытаюсь извлечь тики из графика Python, нарисованного с помощью seaborn.
У меня есть два набора кода ниже, которые, как я думал, дадут одинаковые результаты. Однако один из них правильно извлекает тики, а другой просто возвращает нули.
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.gca()
t = np.arange(0.0, 100.0, 0.1)
s = np.sin(0.1 * np.pi * t) * np.exp(-t * 0.01)
ax.plot(t, s)
plt.show()
print([p.label.get_position()[0] for p in ax.xaxis.get_major_ticks()])
print([p.label.get_position()[0] for p in ax.xaxis.get_minor_ticks()])
print([p.label.get_position()[1] for p in ax.yaxis.get_major_ticks()])
print([p.label.get_position()[1] for p in ax.yaxis.get_minor_ticks()])
import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
fig = plt.figure()
ax = fig.gca()
t = np.arange(0.0, 100.0, 0.1)
s = np.sin(0.1 * np.pi * t) * np.exp(-t * 0.01)
data = pd.DataFrame()
data['x'] = t
data['y'] = s
display(data)
sns_plot = sns.scatterplot(x='x', y='y', data=data, ax=ax)
sns_plot.set_title("test plot")
print([p.label.get_position()[0] for p in ax.xaxis.get_major_ticks()])
print([p.label.get_position()[0] for p in ax.xaxis.get_minor_ticks()])
print([p.label.get_position()[1] for p in ax.yaxis.get_major_ticks()])
print([p.label.get_position()[1] for p in ax.yaxis.get_minor_ticks()])
Я пытаюсь извлечь тики из графика Python, нарисованного с помощью seaborn. У меня есть два набора кода ниже, которые, как я думал, дадут одинаковые результаты. Однако один из них правильно извлекает тики, а другой просто возвращает нули. [code]import matplotlib.pyplot as plt import numpy as np
fig = plt.figure()
ax = fig.gca()
t = np.arange(0.0, 100.0, 0.1) s = np.sin(0.1 * np.pi * t) * np.exp(-t * 0.01)
ax.plot(t, s)
plt.show()
print([p.label.get_position()[0] for p in ax.xaxis.get_major_ticks()]) print([p.label.get_position()[0] for p in ax.xaxis.get_minor_ticks()]) print([p.label.get_position()[1] for p in ax.yaxis.get_major_ticks()]) print([p.label.get_position()[1] for p in ax.yaxis.get_minor_ticks()]) [/code] Выход: [code][-20.0, 0.0, 20.0, 40.0, 60.0, 80.0, 100.0, 120.0] [] [-1.0, -0.75, -0.5, -0.25, 0.0, 0.25, 0.5, 0.75, 1.0, 1.25] [] [/code] Другой фрагмент кода относится к seaborn: [code]import seaborn as sns import matplotlib.pyplot as plt import pandas as pd
fig = plt.figure()
ax = fig.gca() t = np.arange(0.0, 100.0, 0.1) s = np.sin(0.1 * np.pi * t) * np.exp(-t * 0.01)
data = pd.DataFrame() data['x'] = t data['y'] = s display(data)
print([p.label.get_position()[0] for p in ax.xaxis.get_major_ticks()]) print([p.label.get_position()[0] for p in ax.xaxis.get_minor_ticks()]) print([p.label.get_position()[1] for p in ax.yaxis.get_major_ticks()]) print([p.label.get_position()[1] for p in ax.yaxis.get_minor_ticks()]) [/code] Выход: [code][0, 0, 0, 0, 0, 0, 0, 0] [] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [] [/code] Может ли кто-нибудь указать, как я могу извлечь метки галочек из моего морского графика? Или указать, что не так во втором блоке кода? Спасибо!