Как правильно сделать facet_wrap/facet_grid вplotnine, показывая соответствующие подкатегории только в Python?Python

Программы на Python
Ответить
Anonymous
 Как правильно сделать facet_wrap/facet_grid вplotnine, показывая соответствующие подкатегории только в Python?

Сообщение Anonymous »

У меня есть данные с двумя столбцами с категориями, и я пытаюсь создать разделение/фасеты на основе родительской категории, которая будет содержать подкатегории. Ниже я попробовал:

Код: Выделить всё

import pandas as pd
import plotnine as p9
from plotnine import *

# Create a sample dataset
new_data = {
'date': pd.date_range('2022-01-01', periods=8, freq="ME"),
'parent_category': ['Electronics', 'Electronics', 'Fashion', 'Fashion', 'Home Goods', 'Electronics', 'Fashion','Electronics'],
'child_category': ['Smartphones', 'Laptops', 'Shirts', 'Pants', 'Kitchenware','Laptops', 'Shirts', 'Smartphones']
}

# Create the DataFrame
new_data = pd.DataFrame(new_data)

Код: Выделить всё

(ggplot(new_data
,aes(x="date", y="child_category")) +
geom_line(size = 8, color = "pink") + # #edece3
geom_point(size = 6, color = "grey") +
facet_wrap("parent_category",ncol=1) + #
theme_538() +
theme(axis_text_x=element_text(angle=45, hjust=1),
panel_grid_major = element_blank(),
figure_size=(8, 6)
)
)
Изображение

Ожидаемый результат:
Электроника должна показывать только смартфоны и ноутбуки, а не модные товары. На приведенном выше графике все дочерние категории повторяются во всех фасетах, но я хотел бы иметь только соответствующие дочерние_категории в фасетах родительской_Категории.
Если невозможно использовать фасеты, то как это можно сделать ... подсюжеты или любой другой метод?
Будем благодарны за любые предложения!

Подробнее здесь: https://stackoverflow.com/questions/792 ... subcategpr
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»