Превращение фрейма данных в линейный график в процентах

Да, вы можете отправить push-уведомление через Firebase. Пожалуйста, не включайте серверный ключ в свой клиент. Есть способы «для не очень хороших людей» найти его и сделать что-то ... Правильный способ добиться этого - это для вашего клиента указание вашему приложению-серверу отправить уведомление.

Вы должны отправьте HTTP-сообщение в конечную точку Google-API.

Вам понадобятся следующие заголовки:

Content-Type: application/json
Authorization: key={your_server_key}
You can obtain your server key within in the Firebase-Project.

HTTP-Post-Content: Sample

{ 
    "notification": {
        "title": "Notification Title",
        "text": "The Text of the notification."
    },
    "project_id": "<your firebase-project-id",
    "to":"the specific client-device-id"
}
-3
задан d.b 31 March 2019 в 03:09
поделиться

2 ответа

ИМХО, принятый ответ может быть улучшен, чтобы лучше отражать структуру данных OP

  1. путем сохранения порядка столбцов before и after и [1112 ]
  2. , сохраняя заданный порядок строк.

Для достижения этого есть два варианта:

  • Либо превращайте категориальные переменные в факторы с уровнями в желаемом порядке
  • , либо укажите желаемый порядок при построении графика используя scale_discrete().

В приведенном ниже коде используются оба метода:

library(ggplot2)
library(tidyr)
library(dplyr)
df %>%
  mutate(type = forcats::fct_inorder(type)) %>%   # preserve row order
  gather("var", "share", before, after) %>%
  ggplot(aes(x = var, y = share, fill = type)) +
  geom_col(position = "fill") +
  scale_x_discrete(limits = c("before", "after"), name = NULL) +   # specify column order
  scale_y_continuous(labels = scales::percent)

для создания графического эквивалента данных OP:

enter image description here [ 1121]

Кроме того, geom_col() используется в качестве ярлыка для geom_bar(stat = "identity"), а ось у соответственно помечена.

Данные

Поскольку ОП не предоставил воспроизводимый набор данных, но разместил изображение данных, я использовал онлайновый сервис OCR для преобразования снимка экрана в текст. (Ради полноты: если вы искали «online ocr» и выбрали случайным образом https://www.newocr.com/ , что вначале дает желаемый результат).

Затем результат распознавания был скопирован в фрагмент кода ниже:

df <- readr::read_table2(
"type before after
january 297 237
february 182 67
march 234 34
april 55 117")
0
ответ дан Uwe 31 March 2019 в 03:09
поделиться

Вот обобщенный способ получить столбчатую диаграмму в процентах с использованием ваших данных (сгенерированную, потому что я не уверен, что именно вы запрашиваете, как отмечено в моем комментарии выше):

require(tidyverse)
df %>% gather("var", "val", before, after) %>% 
ggplot(aes(x=var, y=val,fill=type)) + 
  geom_bar(stat="identity",position="fill")

Это дает вам это - это то, что вы ищете?

enter image description here

0
ответ дан iod 31 March 2019 в 03:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: