Я пытаюсь создать приложение для быстрого визуализации данных из файлов .csv и простого экспорта в некоторые стандартные стили для дальнейшей обработки. < /p>
Я пытаюсь визуализировать данные, используя Seaborn Как мне нравится, как он взаимодействует с DataFrames и выглядит красиво. Он встроен в виджет Pyqt5, где можно выбрать переменные для оси Y и X Чтобы вызвать LinePlot. < /p>
я попытался добавить функцию, чтобы фильтровать данные на не числовые значения, но он не имеет эффекта. Единственные данные, которые я вызывает, - это DataFrame, содержащий только значения плавания. < /P>
def update(self):
self.ax.clear()
#If no y_variables are selected, use x_variable as the y_variable -> otherwise
#will crash
if not self.plot_variables["y_variables"]:
y_variables = [self.plot_variables["x_variable"]]
else:
y_variables = self.plot_variables["y_variables"]
#Melting dataframe for easy plotting with seaborn
long_data = self.dataframe.melt(
id_vars=[self.plot_variables["x_variable"]],
value_vars=y_variables,
var_name='y_variable',
value_name='value'
)
sns.lineplot(
data=long_data,
x=self.plot_variables["x_variable"],
y='value',
hue='y_variable',
ax=self.ax
)
#Update labels and title if available
if self.plot_variables["x_label"]:
self.ax.set_xlabel(self.plot_variables["x_label"])
if self.plot_variables["y_label"]:
self.ax.set_ylabel(self.plot_variables["y_label"])
if self.plot_variables["title"]:
self.ax.set_title(self.plot_variables["title"])
#Add the legend
self.ax.legend()
#Redraw the canvas
self.fig.canvas.draw_idle()
< /code>
, где x_variable - это строка, соответствующая заголовку и y_variablies Список строк, соответствующих заголовкам DataFrame. или удаляет переменные из списка Y_VARIABLE и обновляет сюжет. Это работает, но я получаю следующую ошибку: < /p>
FutureWarning: use_inf_as_na option is deprecated and will be removed in a future version.
Convert inf values to NaN before operating instead.
with pd.option_context('mode.use_inf_as_na', True):
< /code>
при изменении x_variable в большинстве случаев он сбои. Использование sns.lineplot неправильно?
Подробнее здесь: https://stackoverflow.com/questions/794 ... qt5-widget
Динамический Seaborn LinePlot с использованием виджета PYQT5 ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение