- ベストアンサー
エクセルの散布図
ラベル付きの散布図を作成したいのですが、ちょっとやりかたがわからなくて、困っています。 要するに データ名 x座標 y座標 ----------------------------- データ1 1.55345 -2.10188 データ2 0.93827 -0.37629 データ3 0.73248 -1.28221 データ4 -0.73542 -0.92798 データ5 1.88498 -1.54822 データ6 1.88733 -2.28795 データ7 0.50953 -0.5687 で、x, y座標の点の横あたりにデータ名も表示させたいのです。 エクセルのところで質問させてもらいましたが、上記の事ができればソフトはエクセルでなくてもかまいません。 どなたかご教授をよろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
2003では、グラフのオプション、データラベルタブ、ラベルの内容の系列名にチェックですね。 この場合、系列を行ごとに(系列1=データ1の行、系列2=データ2の行・・)指定してやらないとうまくいかないと思います。 一応こんなマクロ考えてみました。 今回のサンプルデータの場合だとA1:C8を選択した状態で、動かしてみてください。 Sub SampuXY() ' ' 選択済み領域を元に散布図を作成 ' マクロ作成日 : 2004/12/8 ユーザー名 : ' Dim sht1 As Worksheet, wkRng As Range ' Set sht1 = ActiveSheet Set wkRng = Selection If Not wkRng.Columns.Count = 3 Then Exit Sub End If i1 = wkRng.Row im = wkRng.Rows(wkRng.Rows.Count).Row c1 = wkRng.Columns(2).Column c2 = wkRng.Columns(3).Column Charts.Add ActiveChart.ChartType = xlXYScatter ActiveChart.SetSourceData Source:=wkRng, PlotBy:=xlRows With ActiveChart For ix = 1 To im - i1 .SeriesCollection(ix).XValues = "=" & sht1.Name & "!R" & ix + i1 & "C" & c1 .SeriesCollection(ix).Values = "=" & sht1.Name & "!R" & ix + i1 & "C" & c2 Next ix .HasLegend = False .ApplyDataLabels AutoText:=False, LegendKey:=False, _ HasLeaderLines:=False, ShowSeriesName:=True, ShowCategoryName:=False, _ ShowValue:=False, ShowPercentage:=False, ShowBubbleSize:=False End With End Sub
その他の回答 (3)
- cinnamon114
- ベストアンサー率58% (50/85)
作成方法は、下の方が説明されているとおりです。 ラベルの表示方法を説明します。 >すると、「グラフウィザード -3/4- グラフオプション」というダイアログが立ち上がりました。そこで、データラベルのタブを選択したのですが、ラベルを表示するという選択項目がありませんでした。 「データラベル」のタブ「Xの値」「Yの値」がありますよね、これのどちらかにチェックを入れると表示されますよ。 上のデータのとおりに散布図を作成した場合は、「Yの値」の方です。お試しください。
お礼
上記の通り、問題を解決することができました! ご協力どうもありがとうございます!
- imogasi
- ベストアンサー率27% (4737/17069)
#1です。 私の場合エクセル2000です。2003であれば内容的に機能ダウンは考えられないですが、どなたかのご回答でもあれば待ちましょう。 >系列のタブをクリックし、xの値・・ 私は「次へ」を使い、エクセルに任せて、特に指定してません。やってみてください。 エクセルのグラフの常道は、一旦グラフをまず描かせて、それから(場合によっては種類までも)好きなように修正するのがコツです。 まづ私の書いたようにそっくりやって見て、グラフオプションで、「データラベル」のタブをさがし、「ラベルを表示する」を探してください。
お礼
上に書いたとおり、問題を解決することができました! 僕みたいな素人に事細かに説明していただいて、本当にありがとうございます! > 私は「次へ」を使い、エクセルに任せて、特に指定してません。やってみてください。 エクセルのグラフの常道は、一旦グラフをまず描かせて、それから(場合によっては種類までも)好きなように修正するのがコツです。 確かにそうかもしれないですね、エクセルは自分である程度やってくれるので。 使いなれた方のアドバイスはとても参考になります。ありがとうございました!
- imogasi
- ベストアンサー率27% (4737/17069)
範囲指定A1:C7(上記例の場合)挿入-グラフ-散布図-「形式」は一番左上の結線と点のない種類を選ぶ -次へ-完了でグラフが出来る グラフオプション-データラベル-ラベルを表示するを順次クリック。 または系列ごとにやるなら 系列を指定して-データ系列の書式設定-データラベル- ラベルを表示する これで不満足な点は何でしょう。
補足
返信ありがとうございます。 非常にていねいに説明していただいたのですが、 ちょっとわからないことがあったので補足させていただきます。 範囲指定A1:C7(上記例の場合)- 挿入-グラフ-散布図-「形式」は一番左上の結線と点のない種類を選ぶ-次へ- で、ここで「グラフウィザード -2/4- グラフの元データ」というダイアログが出ました。ここで、系列のタブをクリックし、xの値=Sheet1!$B$2:$B$7, yの値=Sheet1!$C$2:$C$7と設定しました。ここでグラフが表示されているのですが、ラベルが付いてることを除いて、一応イメージ通りにできていました。 ここまではあっていますかね? それkら、次へを選択しました。 すると、「グラフウィザード -3/4- グラフオプション」というダイアログが立ち上がりました。そこで、データラベルのタブを選択したのですが、ラベルを表示するという選択項目がありませんでした。 この辺の違いはヴァージョンによるものなのでしょうか? 僕はwindowsXP, Excel 2003を使っています。
お礼
作成していただいたマクロを使って、問題を解決することができました! わざわざマクロを作っていただいて、本当にありがとうございます! それにしても、マクロってこんなこともできるのですね、 自分でもマクロを書けるようがんばりたいと思いました!