- 締切済み
excelのグラフ、横軸なんですが・・・。
現在excel2000で、会社の従業員の賃金カーブを描く折れ線グラフを作成しています。横軸に年齢(18歳~59歳)、縦軸に平均賃金を表したグラフです。ところが従業員が50名程度の会社ですので、18歳~59歳までの年齢が全て埋まる訳ではなく、歯抜けになってしまう年齢が何箇所もあります。 例えば19歳、20歳、25歳の3人が居たとして、19歳~20歳の間と21歳~25歳の間が同じ間隔で表示されてしまいます。グラフの目的から言うと、21歳~25歳の間隔は4歳分空けたいのですが、どうすればよいのでしょうか? 自分なりに考えた解決方法として、データベースに空データを入力し、ツール~オプションのグラフで「補間してプロットする」を選択すれば上手く行くかな?と思ったのですが、データベースに高卒、大卒、新卒入社、中途入社、男性、女性を判断する列を作って、ピポットテーブルでそれらの条件を呼び出すようにしているため、空データを入力するとなると、それぞれの条件での歯抜けになってる年齢分、空データを作らなければならず、非常に効率が悪そうです。 どうか、簡単な方法があればご教授ください。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
ピボットのことを考えずに、私個人で3つ程度の課題を考えて見ました。 ご参考になれば幸いです。 折れ線グラフで考えてます。 (1)在職者年齢が飛び飛びの問題 (2)X軸に年齢を持ってくる問題 (3)補間の問題 データ例 該当がある年だけデータがあるとします。 これを補間のことを考えて、全年令のデータ行に直す方法を考えた。 A列 B列 年齢 給与(千円 18歳 234 20歳 245 24歳 257 25歳 259 26歳 273 28歳 289 30歳 301 「歳」はなくても同じと思う。 (1)D2に18歳、D3に19歳をいれ、D2:D3を範囲指定し、+ハンドルを出して下方向に引っ張る(オートフィル)。すると連続した年齢が現れる。これで59歳までは簡単にセットされる。 本例では簡単のため30歳までで打ち切り。 (2)E2に関数式 =IF(ISERROR(MATCH(D2,$A$2:$A$9,0)),"",(OFFSET($B$2,MATCH(D2,$A$2:$A$9,0)-1,0))) をいれ(本例では)E14まで式を複写する。 結果は D列 E列 18歳 234 19歳 20歳 245 21歳 22歳 23歳 24歳 257 25歳 259 26歳 273 27歳 28歳 289 29歳 30歳 301 となり、データのない年齢にも、給与セルが空白行ができた。 (3)グラフは、D列の見出しを一旦無視して、E2:E14だけでで折れ線を書かせる。(ここが意外にポイントでした) (4)グラフエリアで右クリックして、「元のデータ」を選ぶ 系列タブを選ぶ 下の方の、「項目軸ラベルに使用」の範囲指定枠をクリック D2:D14を指定。OK。 これで年齢が、X軸方向に出ます。 ここに至るのも判りにくい。 (5)補間のため、ツール-オプションー「グラフ」タブー「補間してプロットする」 (5)しかし意外に、グラフは変わらず。空白に見えるE2、E5,・・・などをDELETEキーを押すと、補間の線が出て、変化が起こる。 なぜ式の有無(が影響しているようだが)ではなく、セルの値(空白)を見てくれないのか不思議。エクセルはこういう場合値を問題にするはず。 (5)についてなど、私の誤解、不十分理解があればお詫びします。 しかし手作業が入るので、実用化できるかどうか。またピボットの結果から、(1)へ結びつくかどうか不安あり。 こういうパターンが多数ありと言うことなので、VBAででも繰り返しを やらせるより他ないかと思う。 (5)の解決はVBAなどでやって見ます。
- tresbien
- ベストアンサー率51% (51/99)
ピボットグラフである事を見落としていました。 散布図は出来ないですね。 申し訳ありません。 では、ピボットテーブルで年齢のフィールドを「グループと詳細の表示」-「グループ化」で1歳間隔しておきます。(18-18になって見難いですよ) 次に、そのフィールドで右クリックして「フィールド設定」で「データの無いアイテムを表示する」にチェックを入れます。 後は質問者さんがおっしゃるように「補完してプロットする」でいいと思います。
- tresbien
- ベストアンサー率51% (51/99)
年齢が数値データならば(「18歳」が文字データでなく「18」と入力されているなら) グラフの種類を「散布図」の「データポイントを折れ線でつないだ・・」にすれば良いのではないでしょうか。 後で軸目盛りの最小値を変えれば目的のものになります。 もし必要ならセル書式の表示形式で「18」を「18歳」に表示させればいいだけですものね。
お礼
ご回答ありがとうございます。 試してみたのですが、「ピポットテーブルのデータを使って作成したグラフとXY(散布図)、バブルチャート、株価チャートは併用できません」というメッセージが出て、グラフの種類を散布図に変更できません。(T_T)ピポットテーブルを使ってるのがいけないのでしょうか?
お礼
ご回答ありがとうございます。 教えていただいた方法で試してみた結果、それっぽいグラフが出来ました。が、ご指摘の通り、表もグラフもかなり見辛いですね。^_^; 自分なりにも色々試してみます。ありがとうございました。