• 締切済み

添付図のようなグラフを描きたい

お世話になります。 グラフ様式の名称が分からず自分で調べることもできません。 積み上げ面グラフに似ているのですが、横軸の各データ点の位置では、数値の大きい順に上から並んでいて、途中で順番の入れ替わりが生じています。(普通の積み上げグラフとは異なり上下の順番が固定ではありません。) そもそも、このようなグラフをExcelで描くことができるのかどうかも分からないのですが、良い方法、あるいは他のツールをご存じでしたら教えてください。 宜しくお願いいたします。

みんなの回答

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

エクセルの「グラフの種類は」、下記にあるぐらい、たくさんあります。 https://www.officepro.jp/excelvba/chart_edit/index4.html の表。 ーーー 回答後に、 あるいは3D関連のものかもしれない、と思いやって見たが、そうではないようです。 ーー その他下記のグラフを考えました。 似ているように思います。 商品(楽曲名?)の各年度ごとの、売上高の数字をデータとして、2Dの面に関連したグラフを描いているようです。 簡単ではないが、思っていたほど難しいタイプではないようです。 要点は ・2Dグラフ ・積み上げグラフ(100%積み上げでない) の、ようです。 ーー 例データA1:E4 年度・商品名 A製品 B製品 C製品 D製品 2019 35 30 20 10 2020 50 40 10 30 2021 20 50 30 45 ーー 操作 A1:A4範囲指定 挿入ーグラフー面グラフー▼をクリックしてー「積み上げ面」を選ぶー (今回限りとしても、データとの関連を、分かりやすくするため)各系列で、データラベルの追加(売上高数字がグラフに現れる。質問画像にはないが。) --- 各商品の、年度ごとの、売上高の変動が大きいため、太くなったり狭くなったりする。 売上高を表示する順序は、各年度で固定されている(年度ごと売上げ高順などではない) == どうでもよいが、Cascade,CTZ,Mozaicなどは何の名前ですか?小生は、年寄りで、世事に疎いので。これがわかれば、相当理解の助け(的外れでないことの)になると思う。

hiro_1116
質問者

お礼

重ねてのご回答ありがとうございました。 Excelでは(他のツールでも?)一筋縄ではいかないことは分かってきました。 >各商品の、年度ごとの、売上高の変動が大きいため、太くなったり狭くなったりする。 >売上高を表示する順序は、各年度で固定されている(年度ごと売上げ高順などではない) →年毎に量に応じて太くなったり細くなったりはおっしゃる通りですが、各年のポイントにおいては、各データに隙間がなく、上が最も大きいデータ、下に行くに連れて順に小さくなるという順番に並んでいます。(従って、年毎に大小関係が逆転すると途中で色帯が交差する) >どうでもよいが、Cascade,CTZ,Mozaicなどは何の名前ですか? →ビールの製造に使われるホップ(苦味成分の元になる植物)の品種です。それぞれの品種の年毎の作付面積の変化を示したグラフとなっています。

すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.2

小生は、エクセル・グラフで連戦練磨と言うのではないので、あくまで参考意見です。 (1)これはエクセル独自ではなく、何か専用のソフトを使った、ものではないでしょうか。   市販ソフトでなくても、最低AddInソフトのような。 (2)私なりには   (A)「面グラフ」(2D)を2時期データを同位置に重ねて、下の方を「塗りつぶしなし」に、したのではないか、と思った。   (B)かつそれを何個かのペア―個でも、同一のチャート画面に出して、同じことをしているのではないか? でも1ペアでも手作業(VBAでも)が大変で、上記はやれたとしても、相当複雑で、データそのモノが条件(*)に合わないと、帯状にはならないので、小生の意見も自信がない。(*)単純に、前年同期で全月・期で増加。 例データ Sheet2 A1:F3 梅田店の売り上げの昨年と今年のデータだとしてください。 ーー ーー1月 2月 3月 4月 5月 梅田店A 25 30 40 35 45 梅田店B 20 27 44 30 42 前年同月を下回らない。 ーー 標準モジュールに Sub test01() '-----テストの繰り返し用に、現在のグラフを消去 Dim i As Long With ActiveSheet For i = .ChartObjects.Count To 1 Step -1 .ChartObjects(i).Delete Next i End With '------以下が実質の開始部分 stname = ActiveSheet.Name MsgBox stname '------------------ ypos = 220 '作成領域 Set tch = ActiveSheet.ChartObjects.Add(20, ypos, 400, 200) '面 tch.Chart.ChartType = xlAreaStacked ' xlArea '-----第1データ指定 tch.Chart.SetSourceData Source:=Sheets(2).Range("a1:f2"), PlotBy:=xlRows '------ tch.Chart.HasTitle = True tch.Chart.ChartTitle.Characters.Text = "売上推移 面" MsgBox "AAA" '-------第2データ指定 Range("A1:F1").Copy Range("a10:f10") Range("A3:F3").Copy Range("a11:f11") With ActiveSheet.ChartObjects(1).Chart.SeriesCollection.NewSeries '.XValues = Sheets(2).Range("a10:f11") .Name = "梅田店B" .Values = Range("B11:f11") End With End Sub その後、下の方のグラフで、データ系列の書式設定ー塗りつぶしー塗りつぶしなし で、白色(色なし)にしてください。(VBAコードをWEBで調べたが、見つからず、時間を食った、ので。後免。) == こういうエクセルの質問には、データ例を挙げるべきものだ。 それを見れば、どういう方法でやったか、核心に迫れると予想。 質問者は、最終の形ばかり注目して、方法は、データによるということを、認識できてないのが多い。

hiro_1116
質問者

お礼

ご丁寧にありがとうございました。 質問の仕方が悪いとのご指摘、今後気を付けるようにいたします。 今回は、出来上がりのグラフをネット上で見掛けて、自分が持っているデータで、こんな見せ方ができたら良いなという程度の気持ちで質問してしまいました。

すると、全ての回答が全文表示されます。
  • kon555
  • ベストアンサー率51% (1849/3570)
回答No.1

 元々何のデータのグラフかが分からないので推測ですが、最大最小値があるタイプのデータの折れ線グラフのように見えます。  もしそうなら、Excelで折れ線グラフと面グラフの組み合わせで可能です。 https://infoyandssblog.blogspot.com/2015/12/excelgraph.html?m=1  あるいはデータ1つにつき面グラフ2種の組み合わせでも実現できると思います(片方の塗り潰しを白に設定する)。

hiro_1116
質問者

お礼

早速のご回答ありがとうございました。 手作業で少しデータを加工する必要はありそうですが、ご教示いただいた方法が参考になります。 ありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A