• ベストアンサー

MATLABでのグラフ生成について。

MATLABでのグラフ生成について。 MATLABでエクセルのデータを読み込みグラフを生成しています。 個人的にエクセルよりもきれいなグラフを作ることができると思いますので。 ただ、X軸を対数軸にした際、目盛り線がたくさんあり、非常に見づらいです。そこで、10,100,…,10000000,のときだけ線を出すようにしたいのですがどうすればよろしいのでしょうか? どなたかご存知の方いらっしゃいましたら、教えていただけると幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • Kules
  • ベストアンサー率47% (292/619)
回答No.1

単純に目盛線を10,100,1000,…の時だけ出したいのであれば、 set(gca,'Xtick',10.^(1:8),'MinorGridLineStyle','None','Xgrid','on','Ygrid','on'); とすればよいです。このままだと、軸に目盛線の残骸(軸からピョコピョコちょっとだけ出てるやつ) が出てきたり出てこなかったりするので、それが出てきて欲しくないのであれば set(gca,'XMinorTick','Off'); とすれば出てこなくなります。 semilogx自体は(というかMatlabの軸自体が)プロパティをそこまで自由にカスタマイズ 出来るようになっていませんので、本気でいろいろ細かいことをしたいのであれば、 グラフを描いた後に sp=axes('Color','None'); として透明な軸を描き、そちらのプロパティをいじる(グラフを2枚重ねた状態にする) ことでカスタマイズするしかないかと思われます。 これ以上細かくいじるというのならばその旨補足にお願いします。 (有用な例を示せるかはわかりませんが) 以上、参考になれば幸いです。

noname#137276
質問者

お礼

回答ありがとうございます。 しっかりと自分が思ったとおりのグラフを作成することができました。 ありがとうございました。

関連するQ&A