#python #matplotlib #seaborn
#python #matplotlib #seaborn
Вопрос:
Есть много способов изменить или установить размер рисунка или размер подзаголовка в matplotlib
или seaborn
, но до тех пор, пока размер фигуры изменяется, скажем, становится больше, размер шрифта, ширина линии и размер маркера будут визуально относительно короче. Поэтому мне интересно, есть ли какой-либо способ изменить размер графика, но сохранить все эти вещи без изменений. Это немного похоже на функцию масштабирования во многих pic-приложениях, но эти масштабирования не могут улучшить качество изображения, в то время как изменение размера изображения может.
Комментарии:
1. Привет, покажите нам код, который вы использовали для увеличения участков
2. @404pio Я не думаю, что код важен для этого вопроса. Если вы спросите, код может быть таким же простым, как
sns.displot(data=data, x='duration', kde=True)
илиax.plot(x,y)
. Ключевым моментом является то, как увеличить графики, а также все размеры, такие как размер шрифта, ширина линии и т.д. (например, размер шрифта метки галочки и легенды). Конечно, я могу изменить все размеры шрифта вручную, но мне интересно, есть ли лучший или более элегантный метод. Спасибо.3. Я думаю, что код важен в этом вопросе — мы получим отправную точку.
4. Вместо того чтобы изменять размер, увеличьте dpi при вызове savefig. Затем отрегулируйте размер выходных данных по своему усмотрению.
5. @JodyKlymak О да, именно так! Я попытался изменить dpi во время вызова
savefig
, и качество изображения улучшилось, а относительный визуальный размер не изменился по сравнению с исходным. Это то, о чем я прошу. Вы можете дать ответ, и я приму его. Большое спасибо.
Ответ №1:
Вы можете использовать sns.set()
свойство. Вот пример кода, который может помочь вам понять.
Это с обычным шрифтом.
import seaborn as sns
import matplotlib.pyplot as plt
penguins = sns.load_dataset("penguins")
sns.displot(data=penguins, x="flipper_length_mm", kde=True)
Это с большим шрифтом.
sns.set(font_scale=3) # crazy big
g = sns.displot(data=penguins, x="flipper_length_mm", kde=True)
g.fig.set_figwidth(18.27)
g.fig.set_figheight(11.7)