• 締切済み

エクセルグラフ(散布図)で

データ表に”A”、”B”の別を記入し、Aは青点、Bは赤点というふうに色分けしたいのですが、できないでしょうか? マクロを使えばできますか? A,B別々の表を作れば簡単ですが、全データを線でつないで表示したいので、別表とすることはできません。 何か良いアイデアがありましたら、それもお願いします。

みんなの回答

  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.4

ANo.1,3です。 > 申し訳ないですが、質問はそういうケースで考えていました。(-_-;) ただ、対応として、[青]、[赤]を別の列にしたらどうでしょうか? 回答者様がおっしゃっておられる「別の系列」というのは、例えばどういう配置のことでしょうか? 表1、表2のように、まったく別の表を想定なさっておられたのでしょうか? Excelのグラフで使用(表示)される系列とは、実験などで2つの条件で得られたデータ表の場合の条件に当たります。 私もそのように考えたので、複数回の実験で、特異なデータに青・赤の印が付いたデータに相当するマーカーの色を変更する方法をANo.1で回答させてもらいました。 1個のマーカーを変更すれば、同じ内容に変更するには「F4」キー(繰り返し)を押せばよいので、10~20個のマーカーならなんとか我慢が出来ます。 同じ内容の2つの表を重ねる方法もない訳ではありませんが、数値で指定する方法が分らないので、・・・ 文字だけで説明すると、以下のようになりますが・・・ 1) 上に重ねるグラフの数値軸をクリアします。 2) グラフエリア、プロットエリアの領域を「なし」に設定します。(透明にします。) 3) ドラッグでメインになるグラフの上に移動します。 4) 重ねたグラフのプロットエリアを下のグラフに一致するようサイズを調整します。(上のグラフが選択された状態ではプロットエリアは不透明です。) ※この上下のグラフのサイズを一致させる操作で、ほとんどの人はギブアップすると思います。 5) 上下のプロットエリアのサイズの完了したら、上のグラフのグラフエリアなどの輪郭を「なし」に設定します。 6) 残った目盛り線などを「なし」に設定します。(上のグラフはデータのマーカーだけが表示されます。)

candle2007
質問者

お礼

繊細な努力が要りますねー ンンン・・・

  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.3

ANo.1です。 > ちょっとよくわからなのですが、この操作はグラフ上の各点、ひとつひとつに対してこの操作を行うのですか? もしそうだとすると、膨大なデータがあるので大変な作業になるのですが・・・? ご質問のデータ表を把握できていないので、間違っているかも知れませんが、 データ表の青・赤が2系列の意味なら、2回の操作で可能です。 1) 青の系列をクリック選択します。 2) その上で右クリックして「系列の書式設定」を選択します。 3) 「マーカー」欄で、色を指定して「OK」を押します。 同じ系列のマーカーが指定した色に変わります。 ANo.2の方が例として書かれている×印のデータが青で、×印のないデータが赤の意味であれば、上記の操作例では対応不可です。

candle2007
質問者

補足

>ANo.2の方が例として書かれている×印のデータが青で、×印のないデータが赤の意味であれば、上記の操作例では対応不可です。 申し訳ないですが、質問はそういうケースで考えていました。(-_-;) ただ、対応として、[青]、[赤]を別の列にしたらどうでしょうか? 回答者様がおっしゃっておられる「別の系列」というのは、例えばどういう配置のことでしょうか? 表1、表2のように、まったく別の表を想定なさっておられたのでしょうか?

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

基本的にはマクロの記録がヒントなんですが、相当グラフのマクロをやってないと、自分の場合にあわせた修正が難しいかも。 例データ A1:D5 a 22 27 x b 23 15 c 26 18 x d 9 23 x e 13 15 B1:C5を範囲指定。(とりあえずA列をはずして) 挿入ーグラフー散布図でグラフを描く。 グラフのマーカーを赤点(小さい赤四角)にしておく。 ーー Sub Macro1() For i = 1 To 5 Worksheets("Sheet1").Activate ' MsgBox Worksheets("Sheet1").Cells(i, "D") If Worksheets("Sheet1").Cells(i, "D").Value = "x" Then ActiveChart.PlotArea.Select ActiveChart.SeriesCollection(1).Select ActiveChart.SeriesCollection(1).Points(i).Select Selection.MarkerBackgroundColorIndex = 5 End If Next i End Sub これでD列にXを入れた行の点は青色に変わりましたね。 後は (1)最終行を自動化する<--5(良く使うVBA) (2)項目軸 X軸の見出しをa、b、c・・に設定する。(手動) (3)マーカーの色を好みのものに設定する。マーカーのスタイル 背景を好みのものにする。(VBA) (3)はマクロの記録をとり調べることで可能。

  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.1

データポイントを折れ線でつないだ散布図の同じ系列のマーカーを青と赤にしたいということであれば、 1) 変更したい系列の折れ線をクリック選択します。 2) 色を変更したいマーカーをクリック選択して、そのマーカーの上で右クリックし、表示される一覧から「データ要素の書式設定」を選択します。 3) 表示されるダイアログの「パターン」タブで、右側の「マーカー」欄の「前景」または「背景」または両方の色をご希望の色に変更して「OK」を押します。 なお、上記はExcel2003での操作例です。他のバージョンの操作も大差ないと思います。

candle2007
質問者

補足

ご回答有難うございます。 ちょっとよくわからなのですが、この操作はグラフ上の各点、ひとつひとつに対してこの操作を行うのですか? もしそうだとすると、膨大なデータがあるので大変な作業になるのですが・・・? 質問は、データ表の中の記載値(青・赤)に従って、自動に色付けさせることを希望しています。