質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%
R

R言語は、「S言語」をオープンソースとして実装なおした、統計解析向けのプログラミング言語です。 計算がとても速くグラフィックも充実しているため、数値計算に向いています。 文法的には、統計解析部分はS言語を参考にしており、データ処理部分はSchemeの影響を受けています。 世界中の専門家が開発に関わり、日々新しい手法やアルゴリズムが追加されています。

Q&A

解決済

1回答

527閲覧

Rでヴァイオリンプロットを2軸で作図したい

Gotchara

総合スコア10

R

R言語は、「S言語」をオープンソースとして実装なおした、統計解析向けのプログラミング言語です。 計算がとても速くグラフィックも充実しているため、数値計算に向いています。 文法的には、統計解析部分はS言語を参考にしており、データ処理部分はSchemeの影響を受けています。 世界中の専門家が開発に関わり、日々新しい手法やアルゴリズムが追加されています。

0グッド

0クリップ

投稿2022/08/19 15:39

編集2022/08/19 15:47

前提

Rでァイオリンプロットを用いたデータの可視化について教えてください。
X軸に条件 (刺激有り, 刺激無し; 値は刺激あり=1, 無し=2), y軸にテスト点数をあらわすグラフを作成しようとしています。
ggplot2のgeom_point()で描写すると,X軸に2本の散布図が描写されます。
しかし,同様にgeom_violin()で描写すると,X軸の1.5を中心とする1本のグラフが描写されてしまいます。
geom_point()同様に2本に分けたいのですが,方法がわからず悩んでいます。
(下記のコードでそれぞれ作図した結果を画像添付します)
イメージ説明

条件を分ける0と1という表記方法が原因かと思い,ローデータにて,条件の有無を[1,2]ではなく刺激あり=a, 刺激なし=sと置換して同じコードを走らせました。
その結果,geom_violin()とgeom_boxplot()ともに想定通りX軸の値aとsに1本ずつのプロットが描写されました。

しかし,できればローデータをいじらず,条件の有無を[1,2]表記したまま使用できればと考えています。
参考サイト (http://www.sthda.com/english/wiki/ggplot2-violin-plot-quick-start-guide-r-software-and-data-visualization) では数値 (dose) で条件分けされているため,数値を用いた表記方法が原因ではないのかもしれないと考えています。

解決方法がわかる方がいらっしゃいましたら,教えていただけますと幸いです。
どうぞよろしくお願いいたします。

実現したいこと

ローデータを編集することなく (条件を1,2表記のまま),X軸に2本のバイオリンプロットや箱ひげ図を描写したい

該当のソースコード

data = read_csv("raw.csv") # ポイント (2本) p <- ggplot(data, aes(x = stim, y = score)) + geom_point() p # ヴァイオリン (1本) p <- ggplot(data, aes(x = stim, y = score)) + geom_violin() p

試したこと

条件を分ける値を「1]と「2」から,「a」と「s」に変更した。
結果,想定通りに動作した。

補足情報(FW/ツールのバージョンなど)

参考にしたサイト
http://www.sthda.com/english/wiki/ggplot2-violin-plot-quick-start-guide-r-software-and-data-visualization

R studio 2022.07.1 Build 554

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

条件分けに用いた変数がカテゴリ変数として扱われていないことが原因でした。
プログラムの問題以前だったようで,大変失礼いたしました。

投稿2022/08/19 18:26

Gotchara

総合スコア10

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.31%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問