Rのデータフレームに基づいて適切なグラフをプロットし、それをHTMLに変換します

ベクターJX

以下にデータフレームについて説明しました。

DF_1>

    Month  # of A  M  Sum of A  M Med A  Mean A   # of B  M  Sum of B M  Median B  Mean B

    Mar-17 10      -  100000    -        -        6       -  15000    -  -         -      
    Feb-17 22      -  150000    -        -        8       -  22000    -  -         -
    Jan-17 25      -  200000    -        -        3       -  23000    -  -         -

-グラフのプロットに使用していない値であるため、他のフィールドにマークを付けました。以下は、同じデータフレームのhtml形式のスクリーンショットです。(上記のキャプションとデータフレームの残りの2行を除く)

ここに画像の説明を入力してください

与え下部に一つの追加行でTotal、どのように両方のためのグラフでプロットするStatus of AStatus of B使用# of ASum of A# of BおよびSum of Bデータ点を。

月はY軸上にあり、他のデータポイントXはグラフの見出しのような軸上にありABCます。

さらに、そのグラフHtmlmailRライブラリから簡単に郵送できる形式に変換したいと思います。

私はすでに以下のように私のメール本文をカバーする2つのhtmlテーブルを持っています:

AAAA CCCC

BBBBBBBBB

どこでAAAA一つのテーブルであり、BBBBBBBBB第二のテーブルで、CCCC私はこのグラフを手配したい空白スペースがあります。

ケビン・アルセノー

@clemensが提供する別のアプローチと拡張機能は、電子メールをとして準備することrmarkdownです。

例.Rmd

---
title: example
output: html_document
---

```{r setup, include=FALSE}
library(knitr)
library(kableExtra)
library(tidyverse)
library(data.table)
```

```{r status, echo=FALSE}
status <- tibble(
  Month = factor(
    c('Jan-17', 'Feb-17', 'Mar-17'),
    levels = c('Jan-17', 'Feb-17', 'Mar-17')
  ),
  '# of A' = c(100000, 150000, 200000),
  'Sum of A' = c(6, 8, 3),
  '# of B' = c(150000, 22000, 23000),
  'Sum of B' = c(2, 4, 6)
)
kable(status, format = "html") %>% kable_styling
```

```{r plot, echo=FALSE}
status_m <- melt(status, id.vars = "Month")

ggplot(status_m, aes(x = Month, y = value, group = variable, color = variable)) +
  geom_line() +
  theme(legend.title = element_blank())
```

```{r status2, echo=FALSE}
kable(status, format = "html") %>% kable_styling
```

このようにしてhtml、画像やその他のコンテンツに対応する必要なしに出力を簡単で再現可能な方法でレンダリングできます

example.R

その場合、送信スクリプトは前の回答からの非常に小さな変更です。

library(mailR)

send.mail(from = "[email protected]",
          to = "[email protected]",
          subject = "test report",
          body = rmarkdown::render("example.Rmd"), # note we render here
          html = TRUE,
          inline = TRUE,
          smtp = list(host.name = "smtp.gmail.com", 
                      port = 465, 
                      user.name = "...", 
                      passwd = "...", 
                      ssl = TRUE),
          authenticate = TRUE,
          send = TRUE)

HTML出力

これは、rmarkdown電子メールでインラインで送信されるレンダリングされたファイルの出力です

ここに画像の説明を入力してください

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Rのデータフレームに基づいて複数のヒストグラムをプロットします

分類Dev

データフレームをRの適切なラベルを持つリストに変換します

分類Dev

Rデータフレームの変数に基づいてN個のラグを入力します

分類Dev

インデックスのリストに基づいて、異なるデータフレームを作成し、それを異なるcsvに出力します

分類Dev

データフレームの列の値に基づいてヒストグラムをプロットします

分類Dev

グループに基づいてデータフレームをフラット化しながら、行を列に転置します

分類Dev

文字列の一致に基づいてデータフレームの行を選択し、それらの行を合計して変換します

分類Dev

2つのデータフレーム値に基づいてプロットを色分けします

分類Dev

matplotlibを使用してプロットしながら、データフレーム列の文字列に基づいてカラーマップを作成する

分類Dev

データフレームに基づいて2つの変数の棒グラフを作成します

分類Dev

データフレーム内の列のデータ型に基づいて、カウントプロットをプロットしたり、ヒストグラムをプロットしたりする関数を作成します

分類Dev

データフレーム操作:データフレームの特定の列をキー値列に基づいてリストに変換します

分類Dev

R:グループおよびさまざまな条件に基づいてデータフレームをサブセット化します

分類Dev

R-一致した文字に基づいてデータフレームを作成し、それらを異なる方法でラベル付けします

分類Dev

列で指定されたレベルに基づいてデータフレームを変換します

分類Dev

Rプロットを使用してデータフレームをテーブルに変換しますか?

分類Dev

データフレームをフィルタリングし、開始日と終了日に基づいてプロットを作成します

分類Dev

列の値に基づいてデータフレームの行を返します。Rスクリプト

分類Dev

それぞれのヌルの数に基づいてデータフレーム列を選択します

分類Dev

Rの使用-別のデータフレームのグループ最大値に基づいてデータフレームを再形成します

分類Dev

Pandasデータフレームを1つの列でグループ化し、別の列に基づいて行をドロップします

分類Dev

パンダの最初の3行に基づいてデータフレームを変換します

分類Dev

月、年に基づいてnx1データフレームをaxbサイズのグリッドに変換します

分類Dev

列の値に基づいて明確な曲線を使用してPandasデータフレームからデータをプロットする

分類Dev

マッピングデータフレームに基づいて、文字のリストをフロートのシーケンスに置き換えます

分類Dev

別のデータフレームに基づいて新しいデータフレームのプロットを作成する方法

分類Dev

インデント属性の値に基づいて、データをフラットからネストされたツリー構造に変換します

分類Dev

日付とそれ以前の日付に基づいてSparkデータフレームを集約します

分類Dev

リストに基づいてデータフレームをフィルタリングし、次にそのフィルターに基づいて各データフレームを保存します。関数またはforループを作成する方法はありますか?

Related 関連記事

  1. 1

    Rのデータフレームに基づいて複数のヒストグラムをプロットします

  2. 2

    データフレームをRの適切なラベルを持つリストに変換します

  3. 3

    Rデータフレームの変数に基づいてN個のラグを入力します

  4. 4

    インデックスのリストに基づいて、異なるデータフレームを作成し、それを異なるcsvに出力します

  5. 5

    データフレームの列の値に基づいてヒストグラムをプロットします

  6. 6

    グループに基づいてデータフレームをフラット化しながら、行を列に転置します

  7. 7

    文字列の一致に基づいてデータフレームの行を選択し、それらの行を合計して変換します

  8. 8

    2つのデータフレーム値に基づいてプロットを色分けします

  9. 9

    matplotlibを使用してプロットしながら、データフレーム列の文字列に基づいてカラーマップを作成する

  10. 10

    データフレームに基づいて2つの変数の棒グラフを作成します

  11. 11

    データフレーム内の列のデータ型に基づいて、カウントプロットをプロットしたり、ヒストグラムをプロットしたりする関数を作成します

  12. 12

    データフレーム操作:データフレームの特定の列をキー値列に基づいてリストに変換します

  13. 13

    R:グループおよびさまざまな条件に基づいてデータフレームをサブセット化します

  14. 14

    R-一致した文字に基づいてデータフレームを作成し、それらを異なる方法でラベル付けします

  15. 15

    列で指定されたレベルに基づいてデータフレームを変換します

  16. 16

    Rプロットを使用してデータフレームをテーブルに変換しますか?

  17. 17

    データフレームをフィルタリングし、開始日と終了日に基づいてプロットを作成します

  18. 18

    列の値に基づいてデータフレームの行を返します。Rスクリプト

  19. 19

    それぞれのヌルの数に基づいてデータフレーム列を選択します

  20. 20

    Rの使用-別のデータフレームのグループ最大値に基づいてデータフレームを再形成します

  21. 21

    Pandasデータフレームを1つの列でグループ化し、別の列に基づいて行をドロップします

  22. 22

    パンダの最初の3行に基づいてデータフレームを変換します

  23. 23

    月、年に基づいてnx1データフレームをaxbサイズのグリッドに変換します

  24. 24

    列の値に基づいて明確な曲線を使用してPandasデータフレームからデータをプロットする

  25. 25

    マッピングデータフレームに基づいて、文字のリストをフロートのシーケンスに置き換えます

  26. 26

    別のデータフレームに基づいて新しいデータフレームのプロットを作成する方法

  27. 27

    インデント属性の値に基づいて、データをフラットからネストされたツリー構造に変換します

  28. 28

    日付とそれ以前の日付に基づいてSparkデータフレームを集約します

  29. 29

    リストに基づいてデータフレームをフィルタリングし、次にそのフィルターに基づいて各データフレームを保存します。関数またはforループを作成する方法はありますか?

ホットタグ

アーカイブ