探検
Matplotlib でグラフプログラミング【Python】
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2009/10/24(土) 21:06:22高機能で柔軟性があり、使い易く、数式表示がデフォルトで可能で、
美しいグラフが作成できる人気のグラフライブラリである Matplotlib
のスレッドです。
ギャラリー
http://matplotlib.sourceforge.net/gallery.html
http://matplotlib.sourceforge.net/users/screenshots.html
ユーザーズガイド
http://matplotlib.sourceforge.net/contents.html
ダウンロード
http://sourceforge.net/projects/matplotlib/files/matplotlib/matplotlib-0.99.1/
2009/10/27(火) 17:19:13
>>13
NumPyでこんなスライスができるのは知らなかった
NumPyでこんなスライスができるのは知らなかった
18デフォルトの名無しさん
2009/10/27(火) 22:45:51 これはまれにみる糞スレage
2009/10/28(水) 23:16:55
python 使いで gnuplot の限界を感じた人が
使うってだけじゃなくて matplotlib 自体がお目あてで
来る人もいるんだねぇ
そういう人むけのチュートリアルとかが出来るといいね
使うってだけじゃなくて matplotlib 自体がお目あてで
来る人もいるんだねぇ
そういう人むけのチュートリアルとかが出来るといいね
2009/11/01(日) 02:19:36
Matplotlibでgriddataを使っているヒトいますか?ちゃんと動きますか?
Debianにgriddataをソースからインストールしたのですが、
セグメントエラーを吐くようになってしまいました。
Debianにgriddataをソースからインストールしたのですが、
セグメントエラーを吐くようになってしまいました。
21デフォルトの名無しさん
2009/11/06(金) 09:06:05 >>1
ギャラリーにSICPで見かけたおねえさんがw
ギャラリーにSICPで見かけたおねえさんがw
2009/11/06(金) 12:15:54
lenaだよ
23デフォルトの名無しさん
2009/11/06(金) 18:15:36 pngファイルを読み込んでそれをそのままmatplotで表示って、
皆さんどうやってますか?
皆さんどうやってますか?
2009/11/06(金) 18:20:08
2009/11/06(金) 18:29:56
2009/11/06(金) 19:34:28
import pylab
import scipy.misc
m = scipy.misc.imread("grayscale.png")
pylab.imshow(m < 127)
pylab.savefig("output.png")
こんなんでどう?
import scipy.misc
m = scipy.misc.imread("grayscale.png")
pylab.imshow(m < 127)
pylab.savefig("output.png")
こんなんでどう?
2009/11/06(金) 22:28:28
2009/11/08(日) 02:46:26
研究室の友人(C言語しか知らない)にPython勧めたら、その場に居合わせた他の研究室の奴に、
「なんでそんな聞いたこともない言語使うの?VBでいいじゃん」
って言われてしまった。理系だったらPythonのがいいと思うんだけどなぁ。。。
「なんでそんな聞いたこともない言語使うの?VBでいいじゃん」
って言われてしまった。理系だったらPythonのがいいと思うんだけどなぁ。。。
2009/11/08(日) 02:56:20
聞いたことも無いのはお前が不勉強だからだってすぐに言えば良かったのに
2009/11/08(日) 02:57:45
python しらねーの?w
情弱 プギャー w
でよかったんじゃね?
情弱 プギャー w
でよかったんじゃね?
2009/11/08(日) 03:27:41
2009/11/08(日) 10:57:21
excel操作なんか大抵の言語でできるよ(当然pythonも)
2009/11/08(日) 11:30:12
VBで出来ないことまで出来るよねw
2009/11/08(日) 11:50:40
Fランク大学は放置しる
2009/11/08(日) 11:51:53
Excelに10000行くらいのデータを貼り付けてプロットしてる人を見るとアホかと思う
2009/11/12(木) 18:17:20
>>35
瞬時に結果表示できるなら、それで問題ない。
瞬時に結果表示できるなら、それで問題ない。
2009/11/12(木) 19:11:15
データをとるたびにそれを繰り返してるってことでしょ。
2009/11/12(木) 19:23:59
Excelって小学生並みのアホなグラフしか描けないのに何で使うのかな
2009/11/12(木) 20:27:31
商品として優れてるからだろ。
いい製品なんて大抵ゴミだし。
いい製品なんて大抵ゴミだし。
2009/11/12(木) 21:44:39
>>37
まぁ、コピペの部分ぐらいはマクロ使うかな。
まぁ、コピペの部分ぐらいはマクロ使うかな。
2009/11/16(月) 13:26:05
あんま、話題ないんね。
なんか良い入門ないかな。
28だけど、研究室に布教しようと努力中。。
なんか良い入門ないかな。
28だけど、研究室に布教しようと努力中。。
2009/11/16(月) 13:30:01
最近使いはじめたよ。
便利でキレイでいいね。
gnuplot みたいな手軽さは無いけど。
サクっとグラフを見たいときは gnuplot で
貼り付けたい時なんかは、もう Matplotlib だね。
便利でキレイでいいね。
gnuplot みたいな手軽さは無いけど。
サクっとグラフを見たいときは gnuplot で
貼り付けたい時なんかは、もう Matplotlib だね。
2009/11/17(火) 07:53:32
入門書と言えばBeginning Python Visualization位しか持ってないんだけど、
他にある?
この本でもChapter 6で扱ってるだけ。
あんまり詳しくない。
もっと網羅的な奴ないかな。
他にある?
この本でもChapter 6で扱ってるだけ。
あんまり詳しくない。
もっと網羅的な奴ないかな。
2009/12/01(火) 11:22:44
matplotlib でplot 出力するのは
たいてい png な説明がでてるけど
ps/eps にしてもなんか"画像(ラスタイメージ)"になってるね?
細かいデータを打って拡大すると
ticとかが同じ線幅のはずなのに太かったり細かったりって
なっちゃうのはどうにかならないのかな?
(savefig で dpi=200 とかしてもダメみたい…)
あと,"真ん中あたりに小さくグラフが描画される" けど
もっと出力サイズ一杯に描画する方法ないんでしょうか?
(.ps だと a4目一杯)
savefig にはそういうオプションなさそうだけど…
たいてい png な説明がでてるけど
ps/eps にしてもなんか"画像(ラスタイメージ)"になってるね?
細かいデータを打って拡大すると
ticとかが同じ線幅のはずなのに太かったり細かったりって
なっちゃうのはどうにかならないのかな?
(savefig で dpi=200 とかしてもダメみたい…)
あと,"真ん中あたりに小さくグラフが描画される" けど
もっと出力サイズ一杯に描画する方法ないんでしょうか?
(.ps だと a4目一杯)
savefig にはそういうオプションなさそうだけど…
2009/12/01(火) 12:06:02
手元の環境では普通にベクトルデータで生成されるよ。svgはどう?
2009/12/01(火) 12:59:46
あれ,そうですか.
確かに ps データのなかを改めて見ると
そんな感じに見えますね… orz
うーんなんでだろう.
gv で見るときの問題なのかなぁ...
確かに ps データのなかを改めて見ると
そんな感じに見えますね… orz
うーんなんでだろう.
gv で見るときの問題なのかなぁ...
2010/01/14(木) 09:27:49
matplotlib で line なグラフを描くとき
線種って結構限られていますよね?
実線('-') 破線('-.') 点線(':')
gnuplot だと(指定方法が色とごっちゃになってる問題はありますが)
10種類以上くらいの破線種類なんかがあったりしますが,
破線の種類なんかをもっと沢山用意してプロットするのは
できないんでしょうか?
-・-・- とか −−・−−・−−・−− とか
line の属性をほいほいっと弄れば出来るとか…
線種って結構限られていますよね?
実線('-') 破線('-.') 点線(':')
gnuplot だと(指定方法が色とごっちゃになってる問題はありますが)
10種類以上くらいの破線種類なんかがあったりしますが,
破線の種類なんかをもっと沢山用意してプロットするのは
できないんでしょうか?
-・-・- とか −−・−−・−−・−− とか
line の属性をほいほいっと弄れば出来るとか…
2010/01/14(木) 16:27:03
(line1, ) = plot([1, 2, 3], [3, 4, 5])
line1.set_dashes((2, 1, 2, 1, 2, 5)) # インクのon/offを交互に指定
savefig("asdf.png")
もっといい方法があるかもしれないですが
line1.set_dashes((2, 1, 2, 1, 2, 5)) # インクのon/offを交互に指定
savefig("asdf.png")
もっといい方法があるかもしれないですが
49デフォルトの名無しさん
2010/01/15(金) 17:07:16 くだすれPython(超初心者用)から来ました。
オライリーの「集合知プログラミング」にnumpyを使った非負値行列因子分解と言うのがあるのですが
(ソースは英語版ですが http://examples.oreilly.com/9780596529321/ から落とせます)、
これを乗法的更新ルールというので行うと
http://pc12.2ch.net/test/read.cgi/tech/1256350845/785 のようにすぐにNaNになってしまいます
(10回に一回のprint costを毎回print costするようにすると3周目でnanになるようです)。
このスレの方ならnumpyのことをご存知で無いかと思い質問したしだいです。よろしくお願いします。
オライリーの「集合知プログラミング」にnumpyを使った非負値行列因子分解と言うのがあるのですが
(ソースは英語版ですが http://examples.oreilly.com/9780596529321/ から落とせます)、
これを乗法的更新ルールというので行うと
http://pc12.2ch.net/test/read.cgi/tech/1256350845/785 のようにすぐにNaNになってしまいます
(10回に一回のprint costを毎回print costするようにすると3周目でnanになるようです)。
このスレの方ならnumpyのことをご存知で無いかと思い質問したしだいです。よろしくお願いします。
2010/01/15(金) 17:15:54
ソースコードは10章のnmf.py(データ取得部はnewsfeatures.py)を見てください。
2010/01/15(金) 18:29:38
numpyのバージョンは?
2010/01/16(土) 00:53:45
2010/01/16(土) 13:15:11
>>52
nnmf.pyを落としてきて,ちょっと見てみたけど
29行目のループ終了条件
if cost == 0: break
を
if cost < 1e-8: break
とかにすればいいんじゃない?
nnmf.pyを落としてきて,ちょっと見てみたけど
29行目のループ終了条件
if cost == 0: break
を
if cost < 1e-8: break
とかにすればいいんじゃない?
2010/01/17(日) 06:13:27
2010/01/17(日) 08:53:54
いやこれ繰り返し回数じゃなくて
二乗距離でしょ?
かえてやってみたのかと
まぁいいや
二乗距離でしょ?
かえてやってみたのかと
まぁいいや
2010/01/17(日) 10:54:49
2010/01/17(日) 13:51:06
>>56
そっか、変えてやってみてもダメでしたか。すまんかった。
書籍持ってなくてnnmf.pyをちら見しただけでコメントしたんだけど
ウェイト更新とかかいてあるんで、ウェイト自体が微小になってしまうことを避ける
条件文なのかと思ってた。
いま改めてみると、ランダムに生成したWとHの積と
与えられたVが等しくなるかどうかのチェックなんだね。
ちょっとググってみて、非不値行列行列因子分解の乗法更新式に関する文献↓を流し読みしてみたけど
http://www.brl.ntt.co.jp/people/kameoka/publications/Kameoka2009ASJ09.pdf
ソースのアルゴリズムは文献のLS法どおりなので問題なさそう。
Pythonには組み込み関数の"iter"があるのに、引数名に"iter"を使っているとか
最初に"h"を生成しているリスト内包表記が、内側と外側で同じループ変数名を使っているとか
スタイルで気になるところはあるけど。
"h"と"w"を更新している箇所は要素同士の計算なので
h, hn, hdやw, wn, wdのある要素[i,j]を更新前後で表示してみれば
NaNになる理由がわかると思うよ。
そっか、変えてやってみてもダメでしたか。すまんかった。
書籍持ってなくてnnmf.pyをちら見しただけでコメントしたんだけど
ウェイト更新とかかいてあるんで、ウェイト自体が微小になってしまうことを避ける
条件文なのかと思ってた。
いま改めてみると、ランダムに生成したWとHの積と
与えられたVが等しくなるかどうかのチェックなんだね。
ちょっとググってみて、非不値行列行列因子分解の乗法更新式に関する文献↓を流し読みしてみたけど
http://www.brl.ntt.co.jp/people/kameoka/publications/Kameoka2009ASJ09.pdf
ソースのアルゴリズムは文献のLS法どおりなので問題なさそう。
Pythonには組み込み関数の"iter"があるのに、引数名に"iter"を使っているとか
最初に"h"を生成しているリスト内包表記が、内側と外側で同じループ変数名を使っているとか
スタイルで気になるところはあるけど。
"h"と"w"を更新している箇所は要素同士の計算なので
h, hn, hdやw, wn, wdのある要素[i,j]を更新前後で表示してみれば
NaNになる理由がわかると思うよ。
2010/01/18(月) 17:33:11
>>57
print デバッグですね。分りました。
print デバッグですね。分りました。
59デフォルトの名無しさん
2010/01/19(火) 18:16:55 >>51 factorize(..) の引数にはどんなデータを与えているんだ。
俺の環境:Enthought python 2.5 では下のように小さな値の行列でも NaN は出てこない
python temp.py
from numpy import *
def difcost(a,b):
  dif=0
  for i in range(shape(a)[0]):
    for j in range(shape(a)[1]):
      # Euclidean Distance
      dif+=pow(a[i,j]-b[i,j],2)
  return dif
def factorize(v,pc=10,iter=50):
  ic=shape(v)[0]
  fc=shape(v)[1]
  # Initialize the weight and feature matrices with random values
  w=matrix([[random.random() for j in range(pc)] for i in range(ic)])
  h=matrix([[random.random() for i in range(fc)] for i in range(pc)])
  # Perform operation a maximum of iter times
続く
俺の環境:Enthought python 2.5 では下のように小さな値の行列でも NaN は出てこない
python temp.py
from numpy import *
def difcost(a,b):
  dif=0
  for i in range(shape(a)[0]):
    for j in range(shape(a)[1]):
      # Euclidean Distance
      dif+=pow(a[i,j]-b[i,j],2)
  return dif
def factorize(v,pc=10,iter=50):
  ic=shape(v)[0]
  fc=shape(v)[1]
  # Initialize the weight and feature matrices with random values
  w=matrix([[random.random() for j in range(pc)] for i in range(ic)])
  h=matrix([[random.random() for i in range(fc)] for i in range(pc)])
  # Perform operation a maximum of iter times
続く
60デフォルトの名無しさん
2010/01/19(火) 18:17:35   for i in range(iter):
    wh=w*h
   
    # Calculate the current difference
    cost=difcost(v,wh)
   
    if i%10==0: print cost
   
    # Terminate if the matrix has been fully factorized
    if cost==0: break
   
    # Update feature matrix
    hn=(transpose(w)*v)
    hd=(transpose(w)*w*h)
 
    h=matrix(array(h)*array(hn)/array(hd))
    # Update weights matrix
    wn=(v*transpose(h))
    wd=(w*h*transpose(h))
    w=matrix(array(w)*array(wn)/array(wd))
   
  return w,h
import scipy as sc
print factorize(sc.randn(10,10)/1000)
    wh=w*h
   
    # Calculate the current difference
    cost=difcost(v,wh)
   
    if i%10==0: print cost
   
    # Terminate if the matrix has been fully factorized
    if cost==0: break
   
    # Update feature matrix
    hn=(transpose(w)*v)
    hd=(transpose(w)*w*h)
 
    h=matrix(array(h)*array(hn)/array(hd))
    # Update weights matrix
    wn=(v*transpose(h))
    wd=(w*h*transpose(h))
    w=matrix(array(w)*array(wn)/array(wd))
   
  return w,h
import scipy as sc
print factorize(sc.randn(10,10)/1000)
2010/01/29(金) 09:36:08
& nbsp;には最後にセミコロン付ける必要があるぞw
2010/02/12(金) 09:12:09
これはひどい
2010/02/17(水) 12:53:49
そういえば統計方面の R言語のスレってどこかの板にある?
あるなら関連スレとして参照しておくくらいは欲しい
あるなら関連スレとして参照しておくくらいは欲しい
2010/02/17(水) 14:00:06
ここにあったのを見た覚えがある
2010/02/17(水) 14:03:02
66デフォルトの名無しさん
2010/02/22(月) 15:15:45 wxバックエンドの場合、
どうやってバックグラウンドカラーを変更できるの
(デフォはグレイ)?
どうやってバックグラウンドカラーを変更できるの
(デフォはグレイ)?
67デフォルトの名無しさん
2010/02/27(土) 10:59:30 質問させてください。
http://d.hatena.ne.jp/noazoh/20091023/1256293199
を参考にローソク足チャートを描きました。また
http://matplotlib.sourcearchive.com/documentation/0.90.1/namespacematplotlib_1_1finance_828611c3468bfc1d1b336155704f4b12.html#828611c3468bfc1d1b336155704f4b12
を見て、quotesにvolumeの値を加えれば、volume_overlay3 がそのまま使えると思ったのですが、
実際に描画してみると、全部同じ高さの棒になってしまいます(上に突き抜けてる?)。
どなたかこのvolume_overlay3の使い方が分かる方いらっしゃいませんでしょうか。
http://d.hatena.ne.jp/noazoh/20091023/1256293199
を参考にローソク足チャートを描きました。また
http://matplotlib.sourcearchive.com/documentation/0.90.1/namespacematplotlib_1_1finance_828611c3468bfc1d1b336155704f4b12.html#828611c3468bfc1d1b336155704f4b12
を見て、quotesにvolumeの値を加えれば、volume_overlay3 がそのまま使えると思ったのですが、
実際に描画してみると、全部同じ高さの棒になってしまいます(上に突き抜けてる?)。
どなたかこのvolume_overlay3の使い方が分かる方いらっしゃいませんでしょうか。
6867
2010/02/28(日) 02:31:01 コード書きましたようはこんな感じでやりたいんですが
def downyahoo():
date1 = datetranslate("2009/02/18")
date2 = datetranslate(time.strftime("%Y/%m/%d"))
quotes=[]
quotes = matplotlib.finance.quotes_historical_yahoo(^GSPC, date1, date2, False, True, None)
fig = figure()
ax = fig.add_subplot(111)
matplotlib.finance.candlestick(ax, quotes, 0.2, 'r', 'k')
matplotlib.finance.volume_overlay3(ax, quotes)
ax.xaxis_date()
fig.autofmt_xdate()
show()
def datetranslate(date):
d = date.split('/')
startDate = datetime.date(int(d[0]),int(d[1]),int(d[2]))
return startDate
def main():
downyahoo()
def downyahoo():
date1 = datetranslate("2009/02/18")
date2 = datetranslate(time.strftime("%Y/%m/%d"))
quotes=[]
quotes = matplotlib.finance.quotes_historical_yahoo(^GSPC, date1, date2, False, True, None)
fig = figure()
ax = fig.add_subplot(111)
matplotlib.finance.candlestick(ax, quotes, 0.2, 'r', 'k')
matplotlib.finance.volume_overlay3(ax, quotes)
ax.xaxis_date()
fig.autofmt_xdate()
show()
def datetranslate(date):
d = date.split('/')
startDate = datetime.date(int(d[0]),int(d[1]),int(d[2]))
return startDate
def main():
downyahoo()
2010/02/28(日) 17:50:19
>>68
volume_overlay3はメンテされてないみたい
ほとんど同じ内容の "candlestick2" を参考にして
volume_overlay3を書き直してみたよ
http://codepad.org/vvKwA6wO
volume_overlay3はメンテされてないみたい
ほとんど同じ内容の "candlestick2" を参考にして
volume_overlay3を書き直してみたよ
http://codepad.org/vvKwA6wO
2010/02/28(日) 18:10:55
users-mlで同じ症状を訴えている人がいるんだけど
思いっきり無視されてるんで、メンテされていないのかなと
http://www.mail-archive.com/matplotlib-users@lists.sourceforge.net/msg12590.html
思いっきり無視されてるんで、メンテされていないのかなと
http://www.mail-archive.com/matplotlib-users@lists.sourceforge.net/msg12590.html
2010/02/28(日) 23:28:07
>>69
ありがとうございます。本家よりこっちの方が進んでいると言うことですかw
ありがとうございます。本家よりこっちの方が進んでいると言うことですかw
72デフォルトの名無しさん
2010/03/03(水) 17:27:23 date2numした数字をdate2numで元に戻したいのですが、
dates=[matplotlib.dates.num2date(d[i][0]).date() for i in range(len(d)) if d[i][5]==d[i][5]]
とやると、printしたときにdatesの中に
[datetime.date(2010, 2, 25), … datetime.date(2010, 3, 1)]
とか入るんですが、これを
['2010, 2, 25',…'2010, 3, 1']
のように短くしたいのですが、どうやればいいか教えて下さい。
dates=[matplotlib.dates.num2date(d[i][0]).date() for i in range(len(d)) if d[i][5]==d[i][5]]
とやると、printしたときにdatesの中に
[datetime.date(2010, 2, 25), … datetime.date(2010, 3, 1)]
とか入るんですが、これを
['2010, 2, 25',…'2010, 3, 1']
のように短くしたいのですが、どうやればいいか教えて下さい。
2010/03/03(水) 17:30:16
num2dateで元に戻したいでした…
2010/03/03(水) 18:12:13
strftime
2010/03/03(水) 21:31:10
matplotlibスレがあるなんて思わなかった!
2010/03/03(水) 22:07:11
この本買ったけど、基礎的な事を学ぶには良かったよ。
Matplotlib for Python Developers
http://www.amazon.co.jp/Matplotlib-Python-Developers-Sandro-Tosi/dp/1847197906
Qt4のWidgetとする方法とか、参考になった。
Matplotlib for Python Developers
http://www.amazon.co.jp/Matplotlib-Python-Developers-Sandro-Tosi/dp/1847197906
Qt4のWidgetとする方法とか、参考になった。
2010/03/04(木) 07:52:49
2次元グラフ作成ソフト「Ngraph for Windows」がフリーソフト化
ttp://www.forest.impress.co.jp/docs/news/20100303_352467.html
ttp://www.forest.impress.co.jp/docs/news/20100303_352467.html
2010/03/04(木) 11:37:02
>>74
strftime(%Y/%m/%d)で出来ました。ありがとう。
strftime(%Y/%m/%d)で出来ました。ありがとう。
2010/03/04(木) 12:35:12
本なんてあるんだ。
2010/03/04(木) 15:30:33
とりあえずお布施で買っておくか
81Zeno ◆5nZQbNmQPs
2010/03/04(木) 16:28:01吾も情報を落とすことにするか。
>>76
早速 "Matplotlib for Python Developers" を手に入れてみた(英語版)。
Web アプリや Matplotlib のグラフィックインターフェースへの組み込み方の
説明に力を入れてはいるものの、肝心の matplotlib の活用/応用系のチャプターは
短絡的すぎる。実際、そもそも作者の言う "advanced" は "basic" レベル止まりで、
全体的に内容が浅くなっている件は否定できない。
もし興味があれば
ttp://www.amazon.com/Beginning-Python-Visualization-Transformation-Professionals/dp/1430218436/
も平行して読んでみると良いかもしれん (こちらも初歩的なプロティングしか触れていない) が、
個人的に、 ttp://matplotlib.sourceforge.net/gallery.html を参照するのが
上達の一番の近道だと思っている。
2010/03/04(木) 21:05:57
2010/03/05(金) 20:33:20
意外に欲しいメソッドが無かったりするね。
例えば、tick labelのフォントを変えたりとか。
figureの保持するlegendを取得するメソッドも無い。axesにはあるのに。
まぁ、俺が知らないだけかも知れないけど。
例えば、tick labelのフォントを変えたりとか。
figureの保持するlegendを取得するメソッドも無い。axesにはあるのに。
まぁ、俺が知らないだけかも知れないけど。
2010/03/06(土) 00:00:21
結構どんどん追加されていってるからね
伊達にv1.0未満じゃないというか…
オンラインドキュメント調べて
あれこの機能が動作しないと思ったら
最新版じゃないと駄目だったなんてよく起きるし
伊達にv1.0未満じゃないというか…
オンラインドキュメント調べて
あれこの機能が動作しないと思ったら
最新版じゃないと駄目だったなんてよく起きるし
2010/03/06(土) 22:54:12
あるねぇ。
リリース版では「class IndexFormatter」も「Formatter」を継承してなくて、動くはずのものがエラーになった。
リリース版では「class IndexFormatter」も「Formatter」を継承してなくて、動くはずのものがエラーになった。
2010/05/09(日) 21:12:20
gnuplotとGhostscript と GSviewあたりを最新版にしたら、うまくPNGとか作成されなくなった
色々と設定し直せばいいんだが、面倒になったきた
そこで、pythonで別のグラフ作成方法ないかと思って、これにたどり着いたが・・・
python3使ってるわ・・・残念
>>25
これ他方法でもできないかな
色々と設定し直せばいいんだが、面倒になったきた
そこで、pythonで別のグラフ作成方法ないかと思って、これにたどり着いたが・・・
python3使ってるわ・・・残念
>>25
これ他方法でもできないかな
87デフォルトの名無しさん
2010/05/12(水) 11:06:47 試していないから間違っていたら聞き流して欲しいんだけど,awkで
http://gauc.no-ip.org/awk-users-jp/blis.cgi/DoukakuAWK_114
http://gauc.no-ip.org/awk-users-jp/blis.cgi/DoukakuAWK_254
を参考にしたら出来そうな気がする.
http://gauc.no-ip.org/awk-users-jp/blis.cgi/DoukakuAWK_114
http://gauc.no-ip.org/awk-users-jp/blis.cgi/DoukakuAWK_254
を参考にしたら出来そうな気がする.
2010/05/16(日) 14:43:45
Pythonで学ぶ萌え萌え統計学 ー 正規分布からマルコフ連鎖モンテカルロまで 2300円
2010/12/24(金) 15:50:18
そういやこのスレ忘れ去られているんでネタ投下
scipy conference japan やろうぜって話が
python workshop で出てましたねー
この界隈に興味ある人はいるのかな?
scipy conference japan やろうぜって話が
python workshop で出てましたねー
この界隈に興味ある人はいるのかな?
90デフォルトの名無しさん
2010/12/27(月) 04:25:56 hage
91デフォルトの名無しさん
2011/01/30(日) 02:38:10 numpyとmatplotlibがPython3に対応したようですね。
2011/01/30(日) 02:39:15
まじで
2011/01/30(日) 05:36:09
PILはまだか
2011/01/30(日) 18:03:55
Python(x,y)とMacPortsでも対応したら本気出す>3
2011/02/01(火) 00:10:14
>>91
対応してねーじゃねぇか、ぷんすか。
対応してねーじゃねぇか、ぷんすか。
2011/02/24(木) 18:01:22.07
質問させてください。
matplotlib で グラフのフレームの色を変更することは可能でしょうか?
・やりたいことは背景色を黒、メモリなどを白としたい。
1.Figureに facecolor='black'を指定し、set_axis_bgcolorで黒を
指定することで背景を黒にできました。
2.set_xticklabels, set_yticklabelsで白を指定しメモリの数字は
白くできました。
しかし、枠およびメモリ自体を白くする方法がわかりません。
わかる方おられましたら、お願いします。
matplotlib で グラフのフレームの色を変更することは可能でしょうか?
・やりたいことは背景色を黒、メモリなどを白としたい。
1.Figureに facecolor='black'を指定し、set_axis_bgcolorで黒を
指定することで背景を黒にできました。
2.set_xticklabels, set_yticklabelsで白を指定しメモリの数字は
白くできました。
しかし、枠およびメモリ自体を白くする方法がわかりません。
わかる方おられましたら、お願いします。
2011/03/03(木) 22:38:15.74
2011/03/04(金) 16:36:25.26
matplotlibで関数の動きって表現できる?
例えばy = sinx * nとして
nが1から10まで動くとどうなるかっていうのを動的に表現したいんだけど
例えばy = sinx * nとして
nが1から10まで動くとどうなるかっていうのを動的に表現したいんだけど
2011/03/04(金) 19:24:19.40
できますが
nが1から10まで動くと
振幅が変わるだけではないでしょうか
nが1から10まで動くと
振幅が変わるだけではないでしょうか
100デフォルトの名無しさん
2011/03/05(土) 00:47:43.99 ごめん 例えが悪かったわ
結局は関数を更新していってその動きを見たいんだけど
そういうのはmatplotlibに組み込まれてる機能でできるの?
よければ参考になるページとか教えて貰いたいんだが
結局は関数を更新していってその動きを見たいんだけど
そういうのはmatplotlibに組み込まれてる機能でできるの?
よければ参考になるページとか教えて貰いたいんだが
101デフォルトの名無しさん
2011/03/05(土) 13:52:37.64 ふう
102デフォルトの名無しさん
2011/03/06(日) 19:02:55.04 なんのために汎用言語であるpythonを使っているんだ?
for i in range(10):
draw_hoge()
time.sleep(1)
for i in range(10):
draw_hoge()
time.sleep(1)
10396
2011/03/16(水) 16:51:06.66 自己解決
#個々のグラフ領域の枠を白くする
ax = fig.add_subplot(1, 1, 1)
for child in ax.get_children():
if isinstance(child, matplotlib.spines.Spine):
child.set_color('white')
#X軸Y軸のメモリの色を白くする
#メジャーとマイナーは一度には変更できないみたい
#なので2回に分けて行う
for liney in ax.yaxis.get_ticklines(minor=True):
liney.set_color('white')
for liney in ax.yaxis.get_ticklines(minor=False):
liney.set_color('white')
#個々のグラフ領域の枠を白くする
ax = fig.add_subplot(1, 1, 1)
for child in ax.get_children():
if isinstance(child, matplotlib.spines.Spine):
child.set_color('white')
#X軸Y軸のメモリの色を白くする
#メジャーとマイナーは一度には変更できないみたい
#なので2回に分けて行う
for liney in ax.yaxis.get_ticklines(minor=True):
liney.set_color('white')
for liney in ax.yaxis.get_ticklines(minor=False):
liney.set_color('white')
104デフォルトの名無しさん
2011/03/22(火) 13:24:03.28 線の色指定をするときに、任意のカラーマップから色を指定することって可能?
Gray Scaleの場合は、color = '0.75'のようにすればいいけど、
そこを別のカラーマップで0-1の間の数値を入れて指定できるようにしたいです。
Gray Scaleの場合は、color = '0.75'のようにすればいいけど、
そこを別のカラーマップで0-1の間の数値を入れて指定できるようにしたいです。
105デフォルトの名無しさん
2011/03/27(日) 13:27:24.41 二項分布とか正規分布とかを正確に表示したいときは自分で関数つくんないとダメ?
106デフォルトの名無しさん
2011/03/27(日) 14:11:39.66107デフォルトの名無しさん
2011/04/25(月) 15:02:35.40 Python3に対応したから、初めて使ってみたらmatplotlibすげー
軽くgnuplotみたいに画面で直接拡大とかも出来るんだな
軽くgnuplotみたいに画面で直接拡大とかも出来るんだな
108デフォルトの名無しさん
2011/04/25(月) 15:09:27.89 お、 Python3 対応きたんだあ。
109デフォルトの名無しさん
2011/04/25(月) 15:35:17.49110デフォルトの名無しさん
2011/04/25(月) 16:39:03.66 出来た出来た
適当にバラまいたノードがランダムに動くプログラム
でも重すぎるのか途中で処理が止まる…
本当はノード数を1000以上にしたいのに
それと、きちんと再描画されてなく、毎回、点が増えていく…
pylab.ion()
NodeN=int(input("ノード数入力:"))
lisNode =[0]*NodeN
for n in range(NodeN):
lisNode[n]=random.randint(-200,200),random.randint(-200,200)
for i in range(100):
pylab.plot([x for x in lisNode] ,[y for y in lisNode],"*")
pylab.draw()
lisNode=[[lisNode[n][0]+random.randint(-1,1),lisNode[n][1]+random.randint(-1,1)] for i in range(NodeN)]
適当にバラまいたノードがランダムに動くプログラム
でも重すぎるのか途中で処理が止まる…
本当はノード数を1000以上にしたいのに
それと、きちんと再描画されてなく、毎回、点が増えていく…
pylab.ion()
NodeN=int(input("ノード数入力:"))
lisNode =[0]*NodeN
for n in range(NodeN):
lisNode[n]=random.randint(-200,200),random.randint(-200,200)
for i in range(100):
pylab.plot([x for x in lisNode] ,[y for y in lisNode],"*")
pylab.draw()
lisNode=[[lisNode[n][0]+random.randint(-1,1),lisNode[n][1]+random.randint(-1,1)] for i in range(NodeN)]
111デフォルトの名無しさん
2011/04/25(月) 18:39:48.95 上書きがデフォルトなので、毎回図をクリアする必要がある。
あと、そのプログラムが望む動作をするかどうか、落ち着いてコードを読み直してみてね
あと、そのプログラムが望む動作をするかどうか、落ち着いてコードを読み直してみてね
112デフォルトの名無しさん
2011/04/25(月) 20:06:07.41 pylab.plot([x[0] for x in ………
ですね。
手打ちで書いてたので間違えました。
とりあえず、処理が止まらなければ望む動きはしています。
上書きを除いて
画面の図、クリアを調べてみます
ですね。
手打ちで書いてたので間違えました。
とりあえず、処理が止まらなければ望む動きはしています。
上書きを除いて
画面の図、クリアを調べてみます
113デフォルトの名無しさん
2011/05/12(木) 11:49:54.78 外枠を太くしてgnuplotと体裁が同じになるようにしたい
何か方法ないのかな
何か方法ないのかな
114デフォルトの名無しさん
2011/05/12(木) 22:55:32.05115デフォルトの名無しさん
2011/05/12(木) 23:37:13.09116デフォルトの名無しさん
2011/05/13(金) 00:10:12.82 >>114
>110のプログラムは試してないからよくは分からないけど。。
windowを動かすと描画が止まる、ってことなら、うちでもそうなる。おそらくバックエンド部分のバグじゃないかと疑ってる。最期に消えちゃうのは、プログラム最後にshow()を入れると止められる。
>110のプログラムは試してないからよくは分からないけど。。
windowを動かすと描画が止まる、ってことなら、うちでもそうなる。おそらくバックエンド部分のバグじゃないかと疑ってる。最期に消えちゃうのは、プログラム最後にshow()を入れると止められる。
117デフォルトの名無しさん
2011/05/13(金) 01:50:14.28 >>115
>>116
ありがと やっぱ動かすと止まっちゃうのね
import matplotlib.pyplot as plt
import random
plt.ion()
x = [0]*100
y = [0]*100
random.seed();
for i in range(100):
x[i] = random.randint(-100, 100)
y[i] = random.randint(-100, 100)
plt.axis([-110, 110, -110, 110])
plt.grid(True)
for i in range(len(x)):
plt.plot(x[i], y[i] , 'kD')
plt.draw()
plt.show()
これで100個プロット打つのに9秒くらいかかるんだけどこんなものかな
あとshow入れても最後にはやっぱ消えちゃうわ
>>116
ありがと やっぱ動かすと止まっちゃうのね
import matplotlib.pyplot as plt
import random
plt.ion()
x = [0]*100
y = [0]*100
random.seed();
for i in range(100):
x[i] = random.randint(-100, 100)
y[i] = random.randint(-100, 100)
plt.axis([-110, 110, -110, 110])
plt.grid(True)
for i in range(len(x)):
plt.plot(x[i], y[i] , 'kD')
plt.draw()
plt.show()
これで100個プロット打つのに9秒くらいかかるんだけどこんなものかな
あとshow入れても最後にはやっぱ消えちゃうわ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【和訳付き】レーダー照射問題 中国軍と自衛隊との“音声データ”公開 中国国営メディア [♪♪♪★]
- 【YouTuber】バイク事故で入院のゆたぼん、振込で「お見舞金」募る [muffin★]
- 「中国側も日本機のレーダーを感知していた」 中国メディアが報道 [♪♪♪★]
- 中国とロシアの爆撃機、日本周辺で共同飛行 [少考さん★]
- 堀江貴文、キャッシュレス非対応の店にモヤッ 『PayPay』立ち上げの人物にまさかの直談判「現金決済しかできないんだけど…」 [冬月記者★]
- 高市早苗首相、消費税減税に後ろ向き 足かせはレジシステム? 「責任ある積極財政」期待高いが [蚤の市★]
- 【悲惨】中国軍が自衛隊に「事前通告」し自衛隊も返答した音声が公開されてしまうwwwこれは高市チェックアウトゕ★2 [597533159]
- 【悲惨】中国軍が自衛隊に「事前通告」し自衛隊も返答した音声が公開されてしまうwwwこれは高市チェックアウトゕ★3 [597533159]
- 【悲報】JA「全然米が売れなくて倉庫を圧迫してる。助けて!」米卸売り業者「安売りしたら赤字になる…助けて!」 [802034645]
- 俺が突拍子もないレスするとスクリプト扱いされるの不満なんだが
- 中国の日本向けレアアースの輸出止まる、高市のせいで日本終了のお知らせ [931948549]
- そういえば草だけ食ってるヤツらどこいったの?
