質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

3回答

1546閲覧

pythonとmatplotlibでweb上のデータをグラフ化してみたい。

chainsmoker

総合スコア18

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2019/02/08 14:33

前提・実現したいこと

pythonでwebスクレイピングしたデータを使ってグラフを作りたいです。
ここに質問の内容を詳しく書いてください。
株のデータをグラフ化したいです。
ここにより詳細な情報を記載してください。
matplotlibを使いたいんですけど。具体的にどうすればいいかわかりません。教えて欲しいです。
自分は今、pythonを勉強したくて、初心者向けの本は読んだんですけど、次に自分で何を初めて作ればいいかわからないです。やってみたらいいこととかも教えていただきたいです。
わかりにくい質問だと思いますがお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

webスクレイピングは案外難しい技術ですし(というかpythonの知識だけではできなくてweb系の知識がないと困難)、相応の配慮も必要になります。

株価のサイトだと、スクレイピング禁止のところの方が多いんじゃないかな?
(純技術的にはそんなの無視してやる! ということも可能ですが、技術者倫理上おすすめはしません)

データが手に入ったとすれば、matplotlibでグラフを作成すること自体は、ネットの解説やサンプルを頼りにやっていけばそれほど難しくはないでしょう。

なので「株のグラフ」は、どうしても作りたい、のであればあれこれ勉強してやっていただけば良いですし、「とりあえずやってみるか」くらいなら「他から始めた方が良いんじゃないの」というアドバイスになります。


初心者向けの本はしょせん初心者向けの本ですので(まあどの本なのかは知りませんが)、ある程度しっかりした本で更に勉強した方が良いです。できればオライリーの入門 Python 3くらいのレベル、少なくとも公式のPython チュートリアルあたりまでわかるようになると、コーディングしていてハマることが大幅に減ります。後者はネットでただで読めるので、まずは軽く目を通してみるのも良いでしょう。

本当は何か作りたいものがあるからプログラミングを始めるという順番の方が良い気がしますが、まあ今からでもどんなものが作れるのかいろいろ調べてみて、興味の持てるものを探すと良いでしょう。WebでもゲームでもCUIでもGUIでもスマホでも、いろいろアプリケーションはあります。
(ただし、常にpythonが最適な言語の選択とは限らない。少なくとも上に挙げたものならやってやれないことはないですけどね。解説記事などの情報量との兼ね合いもあるので、初心者はできるだけ言語と相性の良いものを選んだほうが捗ると思います。ooをやりければpythonを捨ててxx言語に乗り換えた方が良いとかはありえます)

投稿2019/02/08 17:06

hayataka2049

総合スコア30933

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

chainsmoker

2019/02/09 07:10

回答していただいてありがとうございます。読んだ本はスラスラわかるpythonという本です。私は機械学習や人工知能のことを勉強したいと思ったのでpythonを少し勉強し始めました。ですが、私のやりたいことは多分、初心者には難しいことなのでまず何か小さなものでも作ることに成功してさらに難しい本とかを読むようになっていけたらと考えています。webやゲームやスマホで初心者でもやりやすいものはありますか? オライリーの入門 Python 3などは文章も長いので途中で諦めてしまいそうな気がしています。写経でも楽しく勉強できるサイトやURLも教えて欲しいです。
hayataka2049

2019/02/09 07:54 編集

初心者でもやりやすいかどうか? という観点だと、ある程度ちゃんと動くものを途中で苦労しすぎないで作るのはどれを選んでも大変なので、やる気の湧くものを選ぶしかないと思います。余計な苦労をしたくなければ、けっきょく苦行だと思って分厚い本を読み通した方が早道な気がします。あとはオンライン講座などがいろいろあるので、その辺を探してみるのも一つの手でしょう(私はやったことないので、具体的な助言はできません。ごめんなさい)
chainsmoker

2019/02/09 07:57

漠然としたした質問しかできませんでしたが、丁寧に回答していただきありがとうございます。オライリー の本とか読んで勉強します。
hayataka2049

2019/02/09 08:00

まあ、苦行感があまりに強いなら自分に合いそうなものを試行錯誤しながら探してみれば良いと思います。選択肢は一応いろいろあるはずなので。
guest

0

jupyter notebookはご存知ですか?
そこで試すとわかりやすいです。

%matplotlib inline
import matplotlib.pyplot as plt

で使用できるようになります。

グラフを作りたいのであれば、NumpyやPandasも学んでみては?

そうすれば、Python の機械学習にもつながると思います。

投稿2019/02/09 10:05

nobita

総合スコア66

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

chainsmoker

2019/02/09 11:02

回答していただきありがとうございます。パソコンにpythonはもう入っているんですけど、そこからでもジュピターノートブックは入れられますか?
nobita

2019/02/09 12:37

Anaconda というものがありますので、それをインストールしてください。 そうすると、一緒にインストールされて使用できます。 また、Spyderというものも一緒についていてこれば、書いたコードがどんな動きをするのか1行ごとに確認ができるものです。ご参考に。
nobita

2019/02/09 12:40 編集

import matplotlib.pyplot as plt y = [15, 30, 45, 10, 5] # y値(バーの高さ) x = [1, 2, 3, 4, 5] # x軸上の並び順 label = [ # 各バーのx軸上のラベル 'Apple', 'Banana', 'Orange', 'Grape', 'Strawberry' ] plt.bar(x=x, # x値を設定 height=y, # バーの高さを設定 tick_label=label) # 各バーのx軸上のラベルを設定 plt.title('Sales') # タイトルをプロット plt.xlabel('Fruit') # x軸、y軸のラベルをプロット plt.ylabel('amount of sales') plt.show()
nobita

2019/02/09 12:41

をサンプルとしてJupyterNotebookで実行してみてください。 グラフが表示されるはずです。
chainsmoker

2019/02/10 03:38

anacondaなしでも入れられますか?
nobita

2019/02/10 07:17

https://jupyter.org/install.html を参考にしてください pipを使用すればできるとおもいますが、公式がAnaconda経由のインストールを推奨しています
guest

0

株のデータをグラフ化したい

質問者さんがやろうとしているタスクは次のように分割して考えることができます。

(1) Web からデータを取得する。
(2) 取得したデータを必要に応じて整形する。
(3) データをグラフにする。

一度にやろうとすると、どうすればいいかわからず、手が止まってしまうと思うので、各タスクに必要なことはなにかを洗い出し、まずは簡単な例などでライブラリの使い方などを勉強してください。

(1) Web からデータを取得する。
→ スクレイピングまたは Web サイトが API を提供してる場合はそれを使う。

(2) 取得したデータを必要に応じて整形する。
→ pandas など

(3) データをグラフにする。
→ matplotlib, seaborn

Matplotlibでグラフ作成

投稿2019/02/08 14:42

tiitoi

総合スコア21956

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

chainsmoker

2019/02/09 11:27

回答していただきありがとうございます。参考になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問