[表示 : 全て 最新50 1-99 101- 201- 2ch.scのread.cgiへ]
Update time : 08/17 06:10 / Filesize : 78 KB / Number-of Response : 284
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Matplotlib でグラフプログラミング【Python】



1 名前:デフォルトの名無しさん [2009/10/24(土) 21:06:22 .net]

高機能で柔軟性があり、使い易く、数式表示がデフォルトで可能で、
美しいグラフが作成できる人気のグラフライブラリである Matplotlib
のスレッドです。


ギャラリー
matplotlib.sourceforge.net/gallery.html
matplotlib.sourceforge.net/users/screenshots.html

ユーザーズガイド
matplotlib.sourceforge.net/contents.html

ダウンロード
sourceforge.net/projects/matplotlib/files/matplotlib/matplotlib-0.99.1/


7 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 21:29:06 .net]
Debianでmatplotlibインストールしたら、バージョンが0.98.1だったぁ!

3次元プロットがギリできない〜

8 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 21:29:49 .net]
三次元空間において、
曲面 z = f(x,y)と
曲面 z = g(x,y)
が交わる曲線をプロットする良い方法はあるかな?

9 名前:デフォルトの名無しさん mailto:sage [2009/10/24(土) 21:34:20 .net]
>>7
普通に同じaxesにfとgを加えればいいでしょ。
使ったことないけど、 ax.add_collection3d 見てみれば?
ttp://matplotlib.sourceforge.net/examples/mplot3d/polys3d_demo.html

10 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 01:16:42 .net]
これ良くできてるけど、意外と知られてないよね。

gnuplotだけで頑張ってる人は一見の価値あり。

11 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 09:58:48 .net]
gnuplotだと付属のヘルプで大体マスターできるけど、
matplotlibって何か簡潔で分かり易いのない?


12 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 11:25:20 .net]
gnuplotで頑張ってきた人だけど、おもしろそうなので
ちょっと遊んでみます。

13 名前:デフォルトの名無しさん mailto:sage [2009/10/25(日) 21:55:41 .net]
gnuplotだと『splot 'data.dat' using 5:6:18』とすればプロットしてくれたけど、
こっちでは自分で全部書かないといけないのかな?
自分は↓こうしているんだけど、もっと簡単な方法ってある?

#!/usr/bin/env python
import re
myRegExp = re.compile('^\s*#')

column1 = 5
column2 = 6
column3 = 18

X = []
Y = []
Y = []

fname = open('data.dat', 'r')
for lines in fname:
  if myRegExp.match(lines):
    print '1 line ignored.'
  else:
    itemList = lines.split()
    X.append( float( itemList[ column1 ] ) )
    Y.append( float( itemList[ column2 ] ) )
    Z.append( float( itemList[ column3 ] ) )


14 名前:デフォルトの名無しさん mailto:sage [2009/10/26(月) 03:49:21 .net]
基本的にプロット用のライブラリだから、データの用意は自分で...って感じだけど、
テキスト形式を読みこむ関数はある(実際はmatplotlibのバックエンドのnumpyの機能)。

import pylab
data = pylab.loadtxt("data.dat", comments="#")
X, Y, Z = data[:,(5, 6, 8)]

15 名前:デフォルトの名無しさん mailto:sage [2009/10/26(月) 04:00:13 .net]
>>12
即席で書いたやつだが、こうすれば良し。

LL = [ line.strip().split() for line in file('data.dat') ]
columns = map(list, zip(*LL))

columns[4], columns[5], column[18]




16 名前:デフォルトの名無しさん [2009/10/27(火) 05:16:57 .net]

matplotlibはpythonのライブラリだけど、
コアな計算部分は numpy や PIL だから、
中身は大体Cの部分が実行されてるよね?

スピードはgnuplotと比べてどのぐらい違うんだろうか?

17 名前:12 mailto:sage [2009/10/27(火) 12:12:57 .net]
>>13-14
ありがとう!だいぶ短くなるんですね。

pythonを使うのが初めてなので、まず言語の勉強から始めなければ。


18 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 17:19:13 .net]
>>13
NumPyでこんなスライスができるのは知らなかった

19 名前:デフォルトの名無しさん [2009/10/27(火) 22:45:51 .net]
これはまれにみる糞スレage

20 名前:デフォルトの名無しさん mailto:sage [2009/10/28(水) 23:16:55 .net]
python 使いで gnuplot の限界を感じた人が
使うってだけじゃなくて matplotlib 自体がお目あてで
来る人もいるんだねぇ

そういう人むけのチュートリアルとかが出来るといいね

21 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 02:19:36 .net]
Matplotlibでgriddataを使っているヒトいますか?ちゃんと動きますか?

Debianにgriddataをソースからインストールしたのですが、
セグメントエラーを吐くようになってしまいました。


22 名前:デフォルトの名無しさん [2009/11/06(金) 09:06:05 .net]
>>1
ギャラリーにSICPで見かけたおねえさんがw

23 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 12:15:54 .net]
lenaだよ

24 名前:デフォルトの名無しさん [2009/11/06(金) 18:15:36 .net]
pngファイルを読み込んでそれをそのままmatplotで表示って、
皆さんどうやってますか?

25 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 18:20:08 .net]
>>23
うーん・・・。
背景にしたいの?



26 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 18:29:56 .net]
>>24
たとえば入力した画像の明るさを読み取って、ある値以上の明るさの画素は白、他は黒にして出力
などといった画像処理につなげたいのですが…

27 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 19:34:28 .net]
import pylab
import scipy.misc
m = scipy.misc.imread("grayscale.png")
pylab.imshow(m < 127)
pylab.savefig("output.png")

こんなんでどう?

28 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 22:28:28 .net]
>>26
おお!ありがとうございます!
今ちょっと手元に無いので明日試してみます

29 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 02:46:26 .net]
研究室の友人(C言語しか知らない)にPython勧めたら、その場に居合わせた他の研究室の奴に、
「なんでそんな聞いたこともない言語使うの?VBでいいじゃん」
って言われてしまった。理系だったらPythonのがいいと思うんだけどなぁ。。。

30 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 02:56:20 .net]
聞いたことも無いのはお前が不勉強だからだってすぐに言えば良かったのに

31 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 02:57:45 .net]
python しらねーの?w
情弱 プギャー w
でよかったんじゃね?

32 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 03:27:41 .net]
>>28
両方使えるのがいい。
VBはExcel操作できるから、知っていれば意外と使える。

33 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 10:57:21 .net]
excel操作なんか大抵の言語でできるよ(当然pythonも)

34 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 11:30:12 .net]
VBで出来ないことまで出来るよねw

35 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 11:50:40 .net]
Fランク大学は放置しる



36 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 11:51:53 .net]
Excelに10000行くらいのデータを貼り付けてプロットしてる人を見るとアホかと思う

37 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 18:17:20 .net]
>>35
瞬時に結果表示できるなら、それで問題ない。

38 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 19:11:15 .net]
データをとるたびにそれを繰り返してるってことでしょ。

39 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 19:23:59 .net]
Excelって小学生並みのアホなグラフしか描けないのに何で使うのかな

40 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 20:27:31 .net]
商品として優れてるからだろ。
いい製品なんて大抵ゴミだし。

41 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 21:44:39 .net]
>>37
まぁ、コピペの部分ぐらいはマクロ使うかな。

42 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 13:26:05 .net]
あんま、話題ないんね。
なんか良い入門ないかな。
28だけど、研究室に布教しようと努力中。。

43 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 13:30:01 .net]
最近使いはじめたよ。
便利でキレイでいいね。
gnuplot みたいな手軽さは無いけど。

サクっとグラフを見たいときは gnuplot で
貼り付けたい時なんかは、もう Matplotlib だね。


44 名前:デフォルトの名無しさん mailto:sage [2009/11/17(火) 07:53:32 .net]
入門書と言えばBeginning Python Visualization位しか持ってないんだけど、
他にある?
この本でもChapter 6で扱ってるだけ。
あんまり詳しくない。
もっと網羅的な奴ないかな。


45 名前:デフォルトの名無しさん mailto:age [2009/12/01(火) 11:22:44 .net]
matplotlib でplot 出力するのは
たいてい png な説明がでてるけど
ps/eps にしてもなんか"画像(ラスタイメージ)"になってるね?

細かいデータを打って拡大すると
ticとかが同じ線幅のはずなのに太かったり細かったりって
なっちゃうのはどうにかならないのかな?
(savefig で dpi=200 とかしてもダメみたい…)

あと,"真ん中あたりに小さくグラフが描画される" けど
もっと出力サイズ一杯に描画する方法ないんでしょうか?
(.ps だと a4目一杯)

savefig にはそういうオプションなさそうだけど…



46 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 12:06:02 .net]
手元の環境では普通にベクトルデータで生成されるよ。svgはどう?

47 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 12:59:46 .net]
あれ,そうですか.
確かに ps データのなかを改めて見ると
そんな感じに見えますね… orz

うーんなんでだろう.
gv で見るときの問題なのかなぁ...


48 名前:デフォルトの名無しさん mailto:age [2010/01/14(木) 09:27:49 .net]
matplotlib で line なグラフを描くとき
線種って結構限られていますよね?

実線('-') 破線('-.') 点線(':')

gnuplot だと(指定方法が色とごっちゃになってる問題はありますが)
10種類以上くらいの破線種類なんかがあったりしますが,
破線の種類なんかをもっと沢山用意してプロットするのは
できないんでしょうか?
-・-・- とか −−・−−・−−・−− とか

line の属性をほいほいっと弄れば出来るとか…

49 名前:デフォルトの名無しさん mailto:sage [2010/01/14(木) 16:27:03 .net]
(line1, ) = plot([1, 2, 3], [3, 4, 5])
line1.set_dashes((2, 1, 2, 1, 2, 5)) # インクのon/offを交互に指定
savefig("asdf.png")

もっといい方法があるかもしれないですが

50 名前:デフォルトの名無しさん [2010/01/15(金) 17:07:16 .net]
くだすれPython(超初心者用)から来ました。

オライリーの「集合知プログラミング」にnumpyを使った非負値行列因子分解と言うのがあるのですが
(ソースは英語版ですが examples.oreilly.com/9780596529321/ から落とせます)、
これを乗法的更新ルールというので行うと
pc12.2ch.net/test/read.cgi/tech/1256350845/785 のようにすぐにNaNになってしまいます
(10回に一回のprint costを毎回print costするようにすると3周目でnanになるようです)。

このスレの方ならnumpyのことをご存知で無いかと思い質問したしだいです。よろしくお願いします。

51 名前:デフォルトの名無しさん mailto:sage [2010/01/15(金) 17:15:54 .net]
ソースコードは10章のnmf.py(データ取得部はnewsfeatures.py)を見てください。

52 名前:デフォルトの名無しさん mailto:sage [2010/01/15(金) 18:29:38 .net]
numpyのバージョンは?

53 名前:デフォルトの名無しさん mailto:sage [2010/01/16(土) 00:53:45 .net]
>>51
numpy-1.4.0-win32-superpack-python2.6
をインストールしました。

54 名前:デフォルトの名無しさん mailto:sage [2010/01/16(土) 13:15:11 .net]
>>52
nnmf.pyを落としてきて,ちょっと見てみたけど
29行目のループ終了条件

if cost == 0: break



if cost < 1e-8: break

とかにすればいいんじゃない?

55 名前:デフォルトの名無しさん mailto:sage [2010/01/17(日) 06:13:27 .net]
>>53
レスありがとうございます。ただcosr==0も終了条件なのですが、
繰り返し回数の最大はiterで引数で与えているので、あまり関係ないかと。
3回繰り返すとnanが出てくるようです。



56 名前:デフォルトの名無しさん mailto:sage [2010/01/17(日) 08:53:54 .net]
いやこれ繰り返し回数じゃなくて
二乗距離でしょ?
かえてやってみたのかと
まぁいいや

57 名前:デフォルトの名無しさん mailto:sage [2010/01/17(日) 10:54:49 .net]
>>55
すみませんおっしゃる事が良くわかりません。
これってcostのことですか?iterのことですか?それ以外ですか?
>>53 の変更はやってみたのですが、結果は変わりませんでしたが、
そういう意味ではないのでしょうか?

58 名前:デフォルトの名無しさん mailto:sage [2010/01/17(日) 13:51:06 .net]
>>56
そっか、変えてやってみてもダメでしたか。すまんかった。
書籍持ってなくてnnmf.pyをちら見しただけでコメントしたんだけど
ウェイト更新とかかいてあるんで、ウェイト自体が微小になってしまうことを避ける
条件文なのかと思ってた。

いま改めてみると、ランダムに生成したWとHの積と
与えられたVが等しくなるかどうかのチェックなんだね。

ちょっとググってみて、非不値行列行列因子分解の乗法更新式に関する文献↓を流し読みしてみたけど
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になる理由がわかると思うよ。

59 名前:デフォルトの名無しさん mailto:sage [2010/01/18(月) 17:33:11 .net]
>>57
print デバッグですね。分りました。

60 名前:デフォルトの名無しさん [2010/01/19(火) 18:16:55 .net]
>>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

続く


61 名前:デフォルトの名無しさん [2010/01/19(火) 18:17:35 .net]
  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)


62 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 09:36:08 .net]
& nbsp;には最後にセミコロン付ける必要があるぞw

63 名前:デフォルトの名無しさん mailto:sage [2010/02/12(金) 09:12:09 .net]
これはひどい

64 名前:デフォルトの名無しさん mailto:sage [2010/02/17(水) 12:53:49 .net]
そういえば統計方面の R言語のスレってどこかの板にある?

あるなら関連スレとして参照しておくくらいは欲しい

65 名前:デフォルトの名無しさん mailto:sage [2010/02/17(水) 14:00:06 .net]
ここにあったのを見た覚えがある



66 名前:デフォルトの名無しさん mailto:sage [2010/02/17(水) 14:03:02 .net]
ここにRみたいだ
science6.2ch.net/test/read.cgi/math/1224142396/

67 名前:デフォルトの名無しさん [2010/02/22(月) 15:15:45 .net]
wxバックエンドの場合、
どうやってバックグラウンドカラーを変更できるの
(デフォはグレイ)?

68 名前:デフォルトの名無しさん [2010/02/27(土) 10:59:30 .net]
質問させてください。

d.hatena.ne.jp/noazoh/20091023/1256293199
を参考にローソク足チャートを描きました。また
matplotlib.sourcearchive.com/documentation/0.90.1/namespacematplotlib_1_1finance_828611c3468bfc1d1b336155704f4b12.html#828611c3468bfc1d1b336155704f4b12
を見て、quotesにvolumeの値を加えれば、volume_overlay3 がそのまま使えると思ったのですが、
実際に描画してみると、全部同じ高さの棒になってしまいます(上に突き抜けてる?)。

どなたかこのvolume_overlay3の使い方が分かる方いらっしゃいませんでしょうか。

69 名前:67 [2010/02/28(日) 02:31:01 .net]
コード書きましたようはこんな感じでやりたいんですが

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()


70 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 17:50:19 .net]
>>68

volume_overlay3はメンテされてないみたい
ほとんど同じ内容の "candlestick2" を参考にして
volume_overlay3を書き直してみたよ

codepad.org/vvKwA6wO


71 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 18:10:55 .net]
users-mlで同じ症状を訴えている人がいるんだけど
思いっきり無視されてるんで、メンテされていないのかなと

www.mail-archive.com/matplotlib-users@lists.sourceforge.net/msg12590.html


72 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 23:28:07 .net]
>>69
ありがとうございます。本家よりこっちの方が進んでいると言うことですかw

73 名前:デフォルトの名無しさん [2010/03/03(水) 17:27:23 .net]
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']

のように短くしたいのですが、どうやればいいか教えて下さい。

74 名前:デフォルトの名無しさん mailto:sage [2010/03/03(水) 17:30:16 .net]
num2dateで元に戻したいでした…

75 名前:デフォルトの名無しさん mailto:sage [2010/03/03(水) 18:12:13 .net]
strftime



76 名前:デフォルトの名無しさん mailto:sage [2010/03/03(水) 21:31:10 .net]
matplotlibスレがあるなんて思わなかった!

77 名前:デフォルトの名無しさん mailto:sage [2010/03/03(水) 22:07:11 .net]
この本買ったけど、基礎的な事を学ぶには良かったよ。

Matplotlib for Python Developers
www.amazon.co.jp/Matplotlib-Python-Developers-Sandro-Tosi/dp/1847197906

Qt4のWidgetとする方法とか、参考になった。

78 名前:デフォルトの名無しさん mailto:sage [2010/03/04(木) 07:52:49 .net]
2次元グラフ作成ソフト「Ngraph for Windows」がフリーソフト化
ttp://www.forest.impress.co.jp/docs/news/20100303_352467.html


79 名前:デフォルトの名無しさん mailto:sage [2010/03/04(木) 11:37:02 .net]
>>74
strftime(%Y/%m/%d)で出来ました。ありがとう。

80 名前:デフォルトの名無しさん mailto:sage [2010/03/04(木) 12:35:12 .net]
本なんてあるんだ。


81 名前:デフォルトの名無しさん mailto:sage [2010/03/04(木) 15:30:33 .net]
とりあえずお布施で買っておくか

82 名前:Zeno ◆5nZQbNmQPs [2010/03/04(木) 16:28:01 .net]

吾も情報を落とすことにするか。

>>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 を参照するのが
上達の一番の近道だと思っている。


83 名前:デフォルトの名無しさん mailto:sage [2010/03/04(木) 21:05:57 .net]
>>81
確かに内容浅いね。広く浅くという感じか。
俺は結局公式ドキュメントやexamples、場合によっては本体のソースを見ながらやってる。

84 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 20:33:20 .net]
意外に欲しいメソッドが無かったりするね。
例えば、tick labelのフォントを変えたりとか。
figureの保持するlegendを取得するメソッドも無い。axesにはあるのに。
まぁ、俺が知らないだけかも知れないけど。

85 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 00:00:21 .net]
結構どんどん追加されていってるからね

伊達にv1.0未満じゃないというか…

オンラインドキュメント調べて
あれこの機能が動作しないと思ったら
最新版じゃないと駄目だったなんてよく起きるし



86 名前:デフォルトの名無しさん mailto:sage [2010/03/06(土) 22:54:12 .net]
あるねぇ。
リリース版では「class IndexFormatter」も「Formatter」を継承してなくて、動くはずのものがエラーになった。

87 名前:デフォルトの名無しさん mailto:sage [2010/05/09(日) 21:12:20 .net]
gnuplotとGhostscript と GSviewあたりを最新版にしたら、うまくPNGとか作成されなくなった
色々と設定し直せばいいんだが、面倒になったきた
そこで、pythonで別のグラフ作成方法ないかと思って、これにたどり着いたが・・・
python3使ってるわ・・・残念


>>25
これ他方法でもできないかな


88 名前:デフォルトの名無しさん [2010/05/12(水) 11:06:47 .net]
試していないから間違っていたら聞き流して欲しいんだけど,awkで
gauc.no-ip.org/awk-users-jp/blis.cgi/DoukakuAWK_114
gauc.no-ip.org/awk-users-jp/blis.cgi/DoukakuAWK_254
を参考にしたら出来そうな気がする.

89 名前:デフォルトの名無しさん mailto:sage [2010/05/16(日) 14:43:45 .net]
Pythonで学ぶ萌え萌え統計学 ー 正規分布からマルコフ連鎖モンテカルロまで 2300円

90 名前:デフォルトの名無しさん mailto:age [2010/12/24(金) 15:50:18 .net]
そういやこのスレ忘れ去られているんでネタ投下

scipy conference japan やろうぜって話が
python workshop で出てましたねー
この界隈に興味ある人はいるのかな?

91 名前:デフォルトの名無しさん [2010/12/27(月) 04:25:56 .net]
hage

92 名前:デフォルトの名無しさん [2011/01/30(日) 02:38:10 .net]
numpyとmatplotlibがPython3に対応したようですね。

93 名前:デフォルトの名無しさん mailto:sage [2011/01/30(日) 02:39:15 .net]
まじで

94 名前:デフォルトの名無しさん mailto:sage [2011/01/30(日) 05:36:09 .net]
PILはまだか

95 名前:デフォルトの名無しさん mailto:sage [2011/01/30(日) 18:03:55 .net]
Python(x,y)とMacPortsでも対応したら本気出す>3



96 名前:デフォルトの名無しさん mailto:sage [2011/02/01(火) 00:10:14 .net]
>>91
対応してねーじゃねぇか、ぷんすか。

97 名前:デフォルトの名無しさん mailto:sage [2011/02/24(木) 18:01:22.07 .net]
質問させてください。
matplotlib で グラフのフレームの色を変更することは可能でしょうか?

・やりたいことは背景色を黒、メモリなどを白としたい。
1.Figureに facecolor='black'を指定し、set_axis_bgcolorで黒を
  指定することで背景を黒にできました。
2.set_xticklabels, set_yticklabelsで白を指定しメモリの数字は
 白くできました。

しかし、枠およびメモリ自体を白くする方法がわかりません。
わかる方おられましたら、お願いします。

98 名前:デフォルトの名無しさん mailto:sage [2011/03/03(木) 22:38:15.74 .net]
>>91
numpyは1.5で対応したみたいですね。
matplotlibは、2.7までのようです。

99 名前:デフォルトの名無しさん mailto:sage [2011/03/04(金) 16:36:25.26 .net]
matplotlibで関数の動きって表現できる?
例えばy = sinx * nとして
nが1から10まで動くとどうなるかっていうのを動的に表現したいんだけど

100 名前:デフォルトの名無しさん mailto:sage [2011/03/04(金) 19:24:19.40 .net]
できますが
nが1から10まで動くと
振幅が変わるだけではないでしょうか

101 名前:デフォルトの名無しさん mailto:sage [2011/03/05(土) 00:47:43.99 .net]
ごめん 例えが悪かったわ
結局は関数を更新していってその動きを見たいんだけど
そういうのはmatplotlibに組み込まれてる機能でできるの?
よければ参考になるページとか教えて貰いたいんだが

102 名前:デフォルトの名無しさん [2011/03/05(土) 13:52:37.64 .net]
ふう

103 名前:デフォルトの名無しさん mailto:sage [2011/03/06(日) 19:02:55.04 .net]
なんのために汎用言語であるpythonを使っているんだ?
for i in range(10):
draw_hoge()
time.sleep(1)


104 名前:96 mailto:sage [2011/03/16(水) 16:51:06.66 .net]
自己解決
#個々のグラフ領域の枠を白くする
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')



105 名前:デフォルトの名無しさん mailto:sage [2011/03/22(火) 13:24:03.28 .net]
線の色指定をするときに、任意のカラーマップから色を指定することって可能?
Gray Scaleの場合は、color = '0.75'のようにすればいいけど、
そこを別のカラーマップで0-1の間の数値を入れて指定できるようにしたいです。



106 名前:デフォルトの名無しさん mailto:sage [2011/03/27(日) 13:27:24.41 .net]
二項分布とか正規分布とかを正確に表示したいときは自分で関数つくんないとダメ?

107 名前:デフォルトの名無しさん mailto:sage [2011/03/27(日) 14:11:39.66 .net]
>>105
scipy.stats以下にたくさん分布関数がある


108 名前:デフォルトの名無しさん mailto:sage [2011/04/25(月) 15:02:35.40 .net]
Python3に対応したから、初めて使ってみたらmatplotlibすげー
軽くgnuplotみたいに画面で直接拡大とかも出来るんだな

109 名前:デフォルトの名無しさん mailto:sage [2011/04/25(月) 15:09:27.89 .net]
お、 Python3 対応きたんだあ。

110 名前:デフォルトの名無しさん mailto:sage [2011/04/25(月) 15:35:17.49 .net]
>>100,102
同じところで詰まった…
スレッドとか必要なのかな
Tkでやってた時もよくわからなくてpygameに逃げた

111 名前:デフォルトの名無しさん mailto:sage [2011/04/25(月) 16:39:03.66 .net]
出来た出来た
適当にバラまいたノードがランダムに動くプログラム
でも重すぎるのか途中で処理が止まる…
本当はノード数を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)]

112 名前:デフォルトの名無しさん mailto:sage [2011/04/25(月) 18:39:48.95 .net]
上書きがデフォルトなので、毎回図をクリアする必要がある。
あと、そのプログラムが望む動作をするかどうか、落ち着いてコードを読み直してみてね

113 名前:デフォルトの名無しさん mailto:sage [2011/04/25(月) 20:06:07.41 .net]
pylab.plot([x[0] for x in ………
ですね。
手打ちで書いてたので間違えました。
とりあえず、処理が止まらなければ望む動きはしています。
上書きを除いて

画面の図、クリアを調べてみます

114 名前:デフォルトの名無しさん [2011/05/12(木) 11:49:54.78 .net]
外枠を太くしてgnuplotと体裁が同じになるようにしたい
何か方法ないのかな

115 名前:デフォルトの名無しさん mailto:sage [2011/05/12(木) 22:55:32.05 .net]
>>110
こんな感じでやると、描写中の図を動かそうとすると止まっちゃうんだけどPCスペック低いからかな?
あと描写スピードが遅いのと最後に自動で図が消えちゃうのってどうすればいい?




116 名前:デフォルトの名無しさん mailto:sage [2011/05/12(木) 23:37:13.09 .net]
>>114
>描写中の図を動かそうとすると止まっちゃう
知らんがな
>描写スピードが遅い
プログラムが悪いか、データ点が多すぎるか
>最後に自動で図が消えちゃう
たぶんあなたが消してる

>>110は真似しない方が・・・

117 名前:デフォルトの名無しさん mailto:sage [2011/05/13(金) 00:10:12.82 .net]
>>114
>110のプログラムは試してないからよくは分からないけど。。

windowを動かすと描画が止まる、ってことなら、うちでもそうなる。おそらくバックエンド部分のバグじゃないかと疑ってる。最期に消えちゃうのは、プログラム最後にshow()を入れると止められる。


118 名前:デフォルトの名無しさん mailto:sage [2011/05/13(金) 01:50:14.28 .net]
>>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入れても最後にはやっぱ消えちゃうわ


119 名前:デフォルトの名無しさん mailto:sage [2011/05/15(日) 11:21:02.45 .net]
>>117
show()の前にioff()を入れると画面は消えない。

120 名前:デフォルトの名無しさん mailto:sage [2011/05/16(月) 15:50:46.45 .net]
>>117
plt.ion()はコメントアウトして、
importの下からplt.show()まで時間計ったら0.15秒

for i in range(len(x)):
 plt.plot(x[i] (ry
の部分を、for文やめて
plt.plt(x,y,'kD')
に変更して、0.1秒


Windows7 SP1 32bit
i3 550 3.20GHz
メモリ 2G
Python3.1

121 名前:デフォルトの名無しさん mailto:sage [2011/05/16(月) 21:24:39.24 .net]
drawが時間喰ってる@Python2.7

122 名前:デフォルトの名無しさん mailto:sage [2011/05/16(月) 21:29:50.63 .net]
>>119
draw()もコメントアウトしてある

123 名前:デフォルトの名無しさん mailto:sage [2011/05/16(月) 22:57:10.63 .net]
>>121
元の動機が図をダイナミックに更新したい、ということだからそれだと意味なくない?

124 名前:デフォルトの名無しさん mailto:sage [2011/05/17(火) 17:03:36.09 .net]
Gridのmajorとminorの線種をそれぞれ別で指定する方法ありますか?

125 名前:123 mailto:sage [2011/05/17(火) 19:46:58.24 .net]
解決しました



126 名前:デフォルトの名無しさん mailto:sage [2011/05/23(月) 21:07:48.89 .net]
windowsだとtkですら、途中で応答無くなるのなんとかならないかな

127 名前:デフォルトの名無しさん mailto:sage [2011/05/24(火) ]
[ここ壊れてます]

128 名前:21:56:18.64 .net mailto: 横軸の線の先を矢印にすることって出来ませんか? []
[ここ壊れてます]

129 名前:デフォルトの名無しさん mailto:sage [2011/06/13(月) 00:05:31.79 .net]
eps化してtexに貼りたいんですが、texのフォントを(Computer Modern)を使うことは可能ですか?
またpdf化の際に埋め込めますか?


130 名前:デフォルトの名無しさん [2011/06/28(火) 17:44:57.28 .net]
ttp://matplotlib.sourceforge.net/users/image_tutorial.html
の例(をsubplotsを使って書き直そうとしたもの)なんですが、カラーバーの位置がおかしいです。
どうしてax[0].figureで欲しいものが取れないのでしょうか?

=========================
import matplotlib.pyplot as plt
import matplotlib.image as mpimg

img = mpimg.imread('stinkbug.png')

fig,ax = plt.subplots(ncols=2)
ax[0].set_aspect(1)
img1 = ax[0].imshow(img[:,:,0])
ax[0].figure.colorbar(img1,orientation ='horizontal')
plt.show()


131 名前:128 mailto:sage [2011/06/28(火) 18:03:15.11 .net]
ごり押しでいけた。
plt.subplot(ax[0]).figure.colorbar(img1,orientation ='horizontal')

・・・明らかに設計ミスだと思うんだけど。

132 名前:デフォルトの名無しさん mailto:sage [2011/06/29(水) 21:34:04.98 .net]
subplot 121, 122 で分けてるのですが、
左右の余白大きすて調整したいです。
subplots_adjust では埋められません。
ほかに何かいい方法はありませんか。

133 名前:デフォルトの名無しさん mailto:sage [2011/06/30(木) 12:08:40.08 .net]
type 1フォントをベクトルデータでepsに埋め込めませんか?

134 名前:天使 ◆uL5esZLBSE mailto:sage [2011/07/02(土) 18:22:05.67 .net]
> 元の動機が図をダイナミックに更新したい、ということだからそれだと意味なくない?
ハッアァァァァァァァァァァァァァァアァ??????????????
なるほどゴミなわけだ
ゴミじゃねーか
死ねよゴミ


135 名前:デフォルトの名無しさん mailto:sage [2011/07/06(水) 01:06:18.37 .net]
>>130
matplotlibrcをいじってみるとかはどう?



136 名前:デフォルトの名無しさん mailto:sage [2011/09/04(日) 21:06:24.11 .net]
これCUIオンリーの環境じゃ動かないの?
/var/lib/python-support/python2.5/gtk-2.0/gtk/__init__.py:72: GtkWarning: could not open display
からずらずらエラーで動かないよ
plt.savefig("a.png")だけでもダメなのかな
show()であかんのは納得するんだけど。。

137 名前:デフォルトの名無しさん mailto:sage [2011/09/04(日) 21:57:56.62 .net]
うちでは

138 名前:動くよ
pngに変換するためのバックエンド(Agg)がインスコされてないんじゃない?
http://matplotlib.sourceforge.net/faq/installing_faq.html#backends
[]
[ここ壊れてます]

139 名前:デフォルトの名無しさん mailto:sage [2011/09/05(月) 09:48:22.44 .net]
>134
同じく…
あきらめて X11 環境下でのみ作業してる

たまに ssh login してグラフの作り直しだけしたい
みたいなときに不便なので対策があったら知りたい

140 名前:デフォルトの名無しさん mailto:sage [2011/09/06(火) 19:10:52.18 .net]
>>134
>>136
だめだね
import matplotlib.pyplot as plt
これ一行だけで落ちるからX必須みたいだ
どうにかならんか調べてみます


141 名前:デフォルトの名無しさん mailto:sage [2011/09/06(火) 19:33:23.38 .net]
いやあの>>135をですね

import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
plt.plot([1,2,3,4])
plt.ylabel('some numbers')
plt.savefig('somenum.png')

142 名前:デフォルトの名無しさん mailto:sage [2011/09/07(水) 09:18:37.63 .net]
>>138
すいません135の意味がよくわからなかったのです。
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
ありがとうございます。 解決しました

143 名前:デフォルトの名無しさん mailto:sage [2011/09/08(木) 23:15:48.01 .net]
Numpy/Scipy,Matplotlibのチュートリアル的なサイトって
www.ike-dyn.ritsumei.ac.jp/~uchida/scipy-lecture-notes/index.html
実際ここくらいですか?

144 名前:デフォルトの名無しさん mailto:sage [2011/09/09(金) 16:08:40.70 .net]
うへ,なにこれ すげーボリューム

145 名前:デフォルトの名無しさん mailto:sage [2011/09/13(火) 08:09:30.74 .net]
numplotlib初心者です。
CentOS5のPython2.6上で使いたいのですが、
numpyインストール後matplotlib入れようと
するとド頭の環境チェックでnumpy: noとか
出ちゃってインストールできません。
numpyは1.6.1、matplotlibは1.0.1のtar拾ってきて
どちらもsetup.py installで入れようとしています。
numpy.arangeとかの結果は返ってくるので
numpyは一応入ったようなのですが、
こういう場合の対処方法ありませんか?



146 名前:142 mailto:sage [2011/09/13(火) 11:17:01.71 .net]
自己解決しました。
setup.py実行時に実行フォルダ内のゴミを
拾ってしまっていたようで、一旦cleanして
再度installしたところ無事に入りました。

147 名前:142 mailto:sage [2011/09/14(水) 23:24:10.47 .net]
白黒印刷用の棒グラフを作りたいのですが、
ハッチング等の白黒パターンで棒を塗り潰す
ことって可能でしょうか?

148 名前:デフォルトの名無しさん [2011/10/28(金) 12:52:21.33 .net]
matplotlibはデフォルトで2つのデータ点を直線で結びますが、
一部分だけ線を引かないようにすることは出来ますか。

gnuplotなら、渡すデータを
1 1
2 2

3 3
4 4
のように空行を挟んどけば、(2,2)と(3,3)はwith lineの対象外になるのですが

149 名前:デフォルトの名無しさん mailto:sage [2011/10/30(日) 09:51:54.81 .net]
>>145
matlabだとnanなら線が途切れるな

150 名前:デフォルトの名無しさん mailto:sage [2011/11/08(火) 11:52:07.56 .net]
去年辺りから、海外ではNumpy,Scipy,matplotlibを既存の科学用DSLの代替にしよう、
って流れが盛んですね。
米アマゾンでも、けっこうな勢いで解説書が出てるし。
既に全部、非公式ながらPython3にも対応して、前途も有望そう。

このスレも、この辺の統合スレにしたほうが盛り上がりそうですけど、
2年間で140レスか・・・
Rのスレは数学板にしかないし、ム板では盛り上がらないのかな?

151 名前:デフォルトの名無しさん mailto:sage [2011/11/09(水) 13:53:06.66 .net]
Rは昔ここにもあった

152 名前:デフォルトの名無しさん mailto:sage [2011/11/09(水) 14:35:55.50 .net]
ム板なんてITドカタしかいないからな
まともに数学の話出来る訳がない

153 名前:デフォルトの名無しさん mailto:sage [2011/11/11(金) 21:13:14.56 .net]
Rやmaximaあってもいいけどな。
>>147
そういった本ほんと盛んだよな。でももっとやすうなってくれんかな


154 名前:ニ思ってしまう。Pythonは科学関連のライブラリはかなりほうふだから
基盤として使えるようにしておくといいよね。
p3 に対応したのか。
[]
[ここ壊れてます]

155 名前:デフォルトの名無しさん mailto:sage [2011/11/19(土) 12:41:07.85 .net]
wekaとscipyどっちがオヌヌメ?



156 名前:デフォルトの名無しさん [2011/12/06(火) 22:27:37.37 .net]
scipyかな

157 名前:デフォルトの名無しさん mailto:sage [2011/12/17(土) 17:58:37.66 .net]
xlabelとylabelの位置が軸から離れすぎちゃう
ことがあるんだけど、たとえば
xlabel.hogehoge(0.5,-0.2)みたいな書式で
表示位置を指定する方法はありませんか?

158 名前:デフォルトの名無しさん [2011/12/21(水) 01:11:08.13 .net]
python2.6とmatplotlib0.99を使っています。

subplotで6個のグラフを作成し、
titleは、日本語で入れました。

その後、グラフをPSファイルで出力しようとしましたが出来ませんでした。
PNGファイルでは出力できます。

PS、PDFで出力することは可能でしょうか?教えてください。

159 名前:デフォルトの名無しさん mailto:sage [2011/12/21(水) 08:05:45.11 .net]
>>154
savefigで拡張子を.pdfにすればPDFで、
.epsにすればEPSで出力できるはず。
WindowsのPython2.7、Linuxの同2.6で確認済み。
公式ドキュメントにはPDF、PS、PNG、SVGに
対応とあるが、.psだとだめだった記憶がある。
EPSで出力できればどうにでもなる気もするが。

160 名前:デフォルトの名無しさん mailto:sage [2011/12/22(木) 23:37:49.32 .net]
windows 64bit版がamdしかないけど、intel cpuでも大丈夫なのかな?

161 名前:デフォルトの名無しさん mailto:sage [2011/12/23(金) 09:05:32.23 .net]
intel EM64T は amd x64 のパクリ

162 名前:デフォルトの名無しさん [2011/12/24(土) 18:18:03.13 .net]
>>155
ありがとう、出来ました。

163 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 22:46:15.24 .net]
目盛幅の指定はどうやるのでしょうか?

164 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 23:53:15.06 .net]
matploblib.axis.set_ticks(ticks)ぐらいしか思いつかん

165 名前:デフォルトの名無しさん mailto:sage [2011/12/25(日) 00:39:05.32 .net]
excelもそうだけど、デフォルトの目盛が多すぎだよね



166 名前:デフォルトの名無しさん mailto:sage [2012/01/08(日) 14:32:29.58 .net]
matplotlibわかりづれえよ
なんかpythonっぽくないと言うか
でも他に無いからありがたく使ってるんですけどね‥

167 名前:デフォルトの名無しさん mailto:sage [2012/01/08(日) 17:52:10.34 .net]
>>162
こうしたい、って思った出力が得られるまで
かなり試行錯誤が必要な気はする。
寸法とかpxとinch混在しててややこしい。
あと、インストールはgnuplotの方が楽かな。
WinやMacならスタンドアロンのバイナリも
落ちてるし。

ただ、matplotlibrcをカスタマイズしまくって、
出力されたEPSをさらにPythonでいじくってる
ような俺にとって、matplotlibほど融通のきく
グラフ描画ツールは他にない。
もっとユーザ増えれば楽しくなりそうなのだが。

不満を挙げるとすれば、rcParamでいじれる項目が
バージョンによって結構違ったりすることかな。
ググってきたTipsが手元のバージョンだと使えない
なんてことがよくあるんだけど、俺だけかな?

168 名前:デフォルトの名無しさん mailto:sage [2012/01/09(月) 00:28:00.57 .net]
なんつーか,ややこしくいじるときの設定がややこしい
(柔軟な分,axis とか fig とかいろいろな概念を理解して
それのつつき方を知っている必要がある)

あと,最初にきれいじゃなくていいからとりあえず
おまかせコースで「データファイルとりあえずプロットしろ」の
段階のお手軽さも負けてる(gnuplot比)


もちろん,python で好きなようにいじれる,
numpy とかのデータいじり環境と一体化できる,
というのがメリットなんだけど

169 名前:デフォルトの名無しさん mailto:sage [2012/01/09(月) 11:08:40.01 .net]
あとチト遅いような気がするな。

170 名前:デフォルトの名無しさん [2012/01/13(金) 00:19:06.31 .net]
習得には >>164 のいうように少し時間がかかるけど、
グラフ描画を関数化して

171 名前:再利用性を上げたり、
widget として GUI アプリに統合できたり、便利すぎる。
[]
[ここ壊れてます]

172 名前:デフォルトの名無しさん mailto:sage [2012/01/13(金) 11:55:41.30 .net]
そういえば棒グラフの描き方を調べないといけないんだった
半年くらい忘れてた

173 名前:デフォルトの名無しさん mailto:sage [2012/01/13(金) 17:11:50.25 .net]
ああ
あんたか

174 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 00:12:50.52 .net]
dashes=[4,1,2,1]
line=ax.plot(x, y, linestyle="--")
line[0].set_dashes(dashes)

とか書くと破線のフォーマットを自由に
変更できますよね?
同じことを等高線でやりたいのですが、
set_dashes()のような命令はどのような書式で
行えばいいのでしょうか?
現状の(デフォルトの)破線を適用しているコードは
こんな感じです。

cs=matplotlib.contour(x, y, z)
zc=CS.collections[0]
zc.set_linestyle("--")
#ここでset_dashesしたい。

175 名前:デフォルトの名無しさん mailto:sage [2012/10/08(月) 20:23:52.59 .net]
oppy



176 名前:デフォルトの名無しさん [2012/10/11(木) 20:10:07.37 .net]
tes

177 名前:デフォルトの名無しさん [2013/11/21(木) 19:06:57.78 .net]
あげ

178 名前:デフォルトの名無しさん [2013/11/22(金) 17:08:32.79 .net]
酷い過疎っぷりだな・・・

179 名前:デフォルトの名無しさん mailto:sage [2013/11/29(金) 09:45:26.25 .net]
2年近くネタ枯渇か

順調に使われてると思うんだけど…

180 名前:デフォルトの名無しさん mailto:age [2013/11/29(金) 13:02:56.71 .net]
matplotlib 以外にも関連・類似ツールいろいろ

https://wiki.python.org/moin/NumericAndScientific/Plotting

181 名前:デフォルトの名無しさん [2013/11/29(金) 13:11:39.35 .net]
svg

182 名前:デフォルトの名無しさん mailto:sage [2013/12/04(水) 20:54:41.69 .net]
node.js & R
node.js & octave
peg.js, D3.js

183 名前:デフォルトの名無しさん mailto:sage [2014/02/02(日) 13:37:53.34 .net]
こんにちは。
凡例の文字列に日本語フォントを使いたいのですが、うまくいきません。
例があればご教授いただけないでしょうか。

184 名前:デフォルトの名無しさん mailto:sage [2014/02/04(火) 00:32:06.20 .net]
フォントに日本語を表示できる物に変えれば良かったはず。

185 名前:デフォルトの名無しさん mailto:sage [2014/07/23(水) 14:58:19.39 ID:pGSYFJcR.net]
>>144
これありますか?パターンで塗りつぶしができれば白黒印刷に便利なのですが、ギャラリーにも見あたらないし、検索してもこのレスぐらいしか引っかからないので半分諦めていますが…



186 名前:デフォルトの名無しさん mailto:sage [2014/07/24(木) 09:36:48.44 ID:0egdwMYx.net]
matplotlib fill hatching で画像検索
やり方わかったら教えてね ;-)

187 名前:デフォルトの名無しさん mailto:sage [2014/07/30(水) 09:09:31.45 ID:re+bx8Nt.net]
>>181

やりたかったことが実現できました。どうもありがとう。公式含めてもっとちゃんと探さないとだめですね。失礼しました

python - How do I plot hatched bars using pandas? - Stack Overflow
stackoverflow.com/questions/22833404/how-do-i-plot-hatched-bars-using-pandas

df = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])
ax = plt.figure(figsize=(10, 6)).add_subplot(111)
df.plot(ax=ax, kind='bar', legend=False)

bars = ax.patches
hatches = ''.join(h*len(df) for h in 'x/O.')

for bar, hatch in zip(bars, hatches):
bar.set_hatch(hatch)

ax.legend(loc='center right', bbox_to_anchor=(1, 1), ncol=4)

188 名前:名無CCDさん@画素いっぱい mailto:sage [2014/09/27(土) 22:40:08.06 ID:W7xxfy9p.net]
Ruby3には静的な型を導入するかもだって
理由は最近生まれたスクリプト言語が静的型を持ってるからって・・なんじゃその理由



189 名前:互換なんて関係ねぇーそんなの関係ねぇー、おっバッッカーッ []
[ここ壊れてます]

190 名前:名無CCDさん@画素いっぱい mailto:sage [2014/09/27(土) 22:40:57.75 ID:W7xxfy9p.net]
あ、スレまちがえた、、失礼w

191 名前:デフォルトの名無しさん mailto:sage [2015/08/13(木) 13:55:40.44 ID:LC3PBYmK.net]
このスレPyQtGraphの話ってしてもいいのかな

192 名前:デフォルトの名無しさん [2015/08/13(木) 13:56:12.96 ID:LC3PBYmK.net]
あげ

193 名前:デフォルトの名無しさん mailto:sage [2015/10/08(木) 18:06:00.97 ID:pEnalajB.net]
オライリーのある本にmatplotlibのbasemapは
shapefile形式の地図を読み込んで描画できるって書いてあったんだけど
metro.teczno.com/#osaka-kyoto
ここの大阪の道路と電車の地図を読み込むことができない

194 名前:デフォルトの名無しさん mailto:sage [2015/10/08(木) 18:37:55.20 ID:pEnalajB.net]
cythonにすれば静的型を扱える

195 名前:デフォルトの名無しさん [2015/10/30(金) 12:12:59.83 ID:bGTI8z09.net]
windowsだと途中で応答無くなるのなんとかならないかな



196 名前:デフォルトの名無しさん mailto:sage [2015/11/30(月) 02:13:04.21 ID:HuGRRAxn.net]
パソコンによって微妙にグラフ出力(軸名の太さなど)が違うのはどうやれば対処できますか?

197 名前:デフォルトの名無しさん mailto:sage [2015/11/30(月) 08:54:23.14 ID:A2VxB4My.net]
OSの違いではないでしょうか?
環境を書いて下さい。

198 名前:デフォルトの名無しさん mailto:sage [2015/11/30(月) 22:17:26.96 ID:xNC+/SUX.net]
basemap

199 名前:デフォルトの名無しさん mailto:sage [2015/12/08(火) 21:04:09.56 ID:I8RIi9jS.net]
>>191
同じOSでUSBとHDDに保存しているwinpythonにて実行しました。(どちらも同じバージョン)
すると、やはり軸タイトルが太字になっていたりします。(同じスクリプト)

OSの関係については、同じパソコンでも日によって先述の症状が出たりするのでわかりません

200 名前:デフォルトの名無しさん mailto:sage [2016/02/26(金) 12:57:53.04 ID:FYh5zmj6.net]
matplotlib使って、リアルタイムに送られたデータを元にグラフ作成は可能でしょうか?

201 名前:デフォルトの名無しさん [2016/02/26(金) 14:29:31.34 ID:VQGl6zaq.net]
可能です

202 名前:デフォルトの名無しさん mailto:sage [2016/02/26(金) 14:38:30.00 ID:VQGl6zaq.net]
ion
ioff
pause
draw
relim

203 名前:デフォルトの名無しさん [2016/02/26(金) 14:55:46.37 ID:FYh5zmj6.net]
>>195
有難うございます。
頑張ってみます。
親切にありがとう。

204 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 05:43:37.00 ID:oAofrbJu.net]
質問:scipyのインストール方法を教えてください。

Windows10にPython3.5.1をインストールして、numpyやらをpipでインストールしたのですが
scipyはエラーとなってしまいインストールできません。色々調べて、
ttp://typea.info/blg/glob/2015/09/windows-virtualenv-python27-pip-wheel-scipywindows.html
のサイトを参考にpy -m pip install c:\user\hoge\scipy-0.17.0-cp35-none-win_amd64.whl
で無事にインストールできました。できたのですが、何かおかしいのです。

>>> import scipy.misc
Traceback (most recent call last):
File

205 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 05:44:57.74 ID:oAofrbJu.net]
File "<pyshell#7>", line 1, in <module>
import scipy.misc
File "C:\Program Files\Python\Python35\lib\site-packages\scipy\misc\__init__.py", line 51, in <module>
from scipy.special import comb, factorial, factorial2, factorialk
File "C:\Program Files\Python\Python35\lib\site-packages\scipy\special\__init__.py", line 627, in <module>
from ._ufuncs import *
ImportError: DLL load failed: 指定されたモジュールが見つかりません。

他にもscipy.linalgがありません。皆さんはどのようにscipyをインストールしたのでしょうか。教えてください。



206 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 08:31:04.23 ID:1uyTz51m.net]
Anacondaで全部まとめてぶっこむのが楽よ

207 名前:デフォルトの名無しさん [2016/04/23(土) 12:11:30.63 ID:qkM7UD7C.net]
>>198
普通にインストール出来たけど

208 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 12:32:28.32 ID:oAofrbJu.net]
>>200
ありがとうございます。Anaconda知りませんでした、早速インストールして無事にimport scipy.miscが通りました。
その後に、Anacondaを入れる前から入っているPython(以下、生Pythonとする)でも、scipy.miscが通るようになりました。
何故だろうと調べてみるとAnacondaが設定した環境変数(C:\Anaconda3;C:\Anaconda3\Scripts;C:\Anaconda3\Library\bin)の
おかげでした。これを消すと、生Pythonではimport scipy.miscでエラーとなります。AnacondaのPythonはこの環境変数が無くても
scipy.miscが通ります。

ということで、>>198でscipyをinstallして、かつ、Anacondaもインストールすれば生Pythonの方もscipyが使えるようになります。

209 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 12:37:03.29 ID:oAofrbJu.net]
>>201
私も>>198でインストールできてimport scipyは通るのですが、import scipy.miscはエラーとなる状態でした。
Anacondaをインストールすることで、これも通るようになりました。

210 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 13:16:58.57 ID:qkM7UD7C.net]
>>> import scipy
>>> import scipy.misc

問題ないなー

211 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 11:15:19.99 ID:l3PGNOtI.net]


212 名前:デフォルトの名無しさん [2016/07/15(金) 00:37:49.11 ID:zIcmXt8M.net]
つい先週くらいから仕事でpythonを覚えることになり、vagrantでCentOS6.8でpyenvとvirtualenvで下記の環境を作りました。

python: 3.5.2
pandas: 0.18.1
numpy: 1.11.1
matplotlib: 1.5.1
ta-lib

matplotlib.org/examples/pylab_examples/finance_demo.html
を参考にローソク足は出力できました。
ローソク足と同じプロットの中に移動平均線がうまく出せずに詰まってます。
データはMySQLからpandas.io.sqlで取得しています。

移動平均線は、
sma5 = pd.Series(df['close']).rolling(window=5)
sma5.mean().plot(ax=ax)
でやってみました。
ta-libでも試しましたが、ローソク足と移動平均線を出力すると、
右端と左端に縮まって表示されてしまいます。

どこかに参考になるサイトやソースがあれば教えていただきたいです。
長文で失礼しました。

213 名前:デフォルトの名無しさん mailto:sage [2016/07/15(金) 19:18:46.39 ID:8P+uiz2j.net]
>右端と左端に縮まって表示されてしまいます。

画像貼るかソース貼るかなんかしろよ

214 名前:デフォルトの名無しさん [2016/07/15(金) 23:33:54.08 ID:zIcmXt8M.net]
>207
207です、すみませんでした。
%matplotlib inline
import pandas as pd
import numpy as np
import talib as ta
import matplotlib.pyplot as plt
from matplotlib.finance import candlestick_ohlc
import pymysql.cursors
import pandas.io.sql as psql

# print(df)
# date start high low close
#0 2016-01-04 18818.6 18951.1 18394.4 18451.0
#1 2016-01-05 18398.8 18547.4 18327.5 18374.0
#2 2016-01-06 18410.6 18469.4 18064.3 18191.3

dates = df['date']
tmp = df['date'].values.astype('datetime64[D]')
df['date'] = tmp.astype(float)

plt.figure(figsize=(10, 6))
ax = plt.subplot(111)
plt.xticks(df['date'][::60],[x.strftime('%Y-%m-%d') for x in dates][::60])
plt.grid()
candlestick_ohlc(ax,df.values,width=0.7,colorup='red',colordown='blue')
sma5 = pd.Series(df['close']).rolling(window=5)
sma5.mean().plot()
plt.show()

qiita.com/ynakayama/items/badbf9804835d2da425e
ここのページのような感じで出力させたいです。

215 名前:デフォルトの名無しさん mailto:sage [2016/07/16(土) 15:23:01.94 ID:9Y22Kipm.net]
期待されてるデータはこんな感じっぽい
index start close high low



216 名前:デフォルトの名無しさん mailto:sage [2016/07/16(土) 15:24:59.58 ID:9Y22Kipm.net]
ああ違うな

期待されてるデータはこんな感じっぽい
index start close low high

217 名前:デフォルトの名無しさん [2016/07/18(月) 11:14:03.26 ID:p3/5cugZ.net]
>>210
ありがとうございます。
ヒントを頂いて、色々試しまして期待通りの出力ができました。

sma5 = pd.Series(data=df['close']).rolling(window=5).mean()
ax.plot(df['date'],sma5)

211さんの書き込みがなければ、ググり方の発想すら出てこなかったので、
本当に助かりました。ありがとうございました。

218 名前:デフォルトの名無しさん mailto:sage [2016/09/29(木) 23:38:20.85 ID:2yVpSx56.net]
このようなシンプルな白黒の画像があります
i.imgur.com/jEgghPx.png

これを下記のコードで表示すると
from PIL import Image as image
import matplotlib.pyplot as plt
import numpy as np
im = np.array(image.open('jEgghPx.png'))
plt.imshow(im)
plt.show()

こんなヘンな赤青の図になってしまいます。
imgur.com/a/l9Ifw
何とかしてもとの白黒で正しく表示できないものでしょうか

219 名前:デフォルトの名無しさん [2016/09/30(金) 13:41:37.59 ID:4mQfWuIk.net]
from scipy import misc

def mm(im):
..for y in range(len(im)):
....for x in range(len(im[y])):
......if 10 < y < 12: im[y][x] = x * 511 / len(im[y])
......if 10 < x < 12: im[y][x] = y * 511 / len(im)
..return im

(略)
im2 = misc.toimage(im, cmin=0, cmax=511)
plt.imshow(mm(np.uint32(im2)))
(略)

220 名前:デフォルトの名無しさん [2016/09/30(金) 13:51:49.16 ID:4mQfWuIk.net]
>>213 のはネタだけど

im = np.array(image.open('jEgghPx.png'))
plt.imshow(im)
plt.gray()
plt.show()

でもイケる

221 名前:デフォルトの名無しさん mailto:sage [2016/10/01(土) 13:59:29.48 ID:tpKY3oHI.net]
ありがとうございます。

>>213
キラーンとなりました
>>214
元のモノクロで表示されました

白黒表示目的は>>214で達成できたのですが、>>213が気になります
x=11の列、y=11の列の値を511倍してそれぞれ列サイズ(28)、行サイズ(28)で割るとなぜキラーンとなるのでしょうか?
しかも全体の色味も変わって見えます

222 名前:デフォルトの名無しさん mailto:sage [2016/10/02(日) 13:38:37.38 ID:GX41vvMR.net]
im2 = misc.toimage(im, cmin=0, cmax=511)
plt.imshow(np.uint32(im2))

と比べてごらん

223 名前:デフォルトの名無しさん mailto:sage [2016/10/02(日) 13:47:46.65 ID:GX41vvMR.net]
あとこんなのでも行けるはず

def m(im):
..im[0][0] = 0
..im[len(im)-1][len(im[y])-1] = 511
..return im

(略)
im2 = misc.toimage(im, cmin=0, cmax=511)
plt.imshow(m(np.uint32(im2)))
(略)

224 名前:デフォルトの名無しさん [2016/10/04(火) 14:33:18.64 ID:ZPmHgmj0.net]
こんなのでも逝ける

from scipy import misc

def mmm(im):
..for y in range(len(im)):
....for x in range(len(im[y])):
......im[y][x] = 511 - im[y][x]
..im[0][0] = 0
..im[len(im)-1][len(im[y])-1] = 511
..return im

(略)
im2 = misc.toimage(im, cmin=0, cmax=511)
plt.imshow(mmm(np.uint32(im2)))
(略)

225 名前:デフォルトの名無しさん [2016/10/09(日) 23:30:59.35 ID:xxl1bgNt.net]
matplotlibで簡単なGUIのアプリケーションを自作しようと考えています
そこでボタンを押したときにキャンバスの中央に点がでるようなGUIを作成しようとしているのですが

from numpy.random import rand
import matplotlib.pyplot as plt
from matplotlib.widgets import Button
fig = plt.figure()
ax = fig.add_subplot(111)
plt.subplots_adjust(bottom=0.2)

class Index(object):
def next(self, event):
xdata = event.xdata
ydata = event.ydata
plt.plot(0,0,color="red",marker="o")
plt.draw()

axnext = plt.axes([0.81, 0.05, 0.1, 0.075])
bnext = Button(axnext, 'circle')
bnext.on_clicked(Index().next)
plt.show()

サイトを参考に以上のように組んではいるのですが
ボタンを押した際ボタンの方の中央にプロットされてしまいます
これをキャンバスの方の中央にプロットするにはどのようにしたらよいでしょうか?

欲を言えばボタンを押した後に中央のキャンバス上でクリックした場所に赤い点を出したいです



226 名前:デフォルトの名無しさん mailto:sage [2016/10/10(月) 17:37:13.33 ID:Q436H0RN.net]
>キャンバスの中央に点がでるような

class Index(object):
def __init__(self, ax):
self.ax = ax

def next(self, event):
xdata = event.xdata
ydata = event.ydata
self.ax.plot(0, 0, color="red", marker="o")
plt.draw()

(略)

bnext.on_clicked(Index(ax).next)

227 名前:デフォルトの名無しさん mailto:sage [2016/10/10(月) 17:44:14.43 ID:Q436H0RN.net]
>キャンバス上でクリックした場所に垢移転

class Index(object):
def __init__(self, ax):
self.ax = ax

def next(self, event):
xdata = event.xdata
ydata = event.ydata
self.ax.plot(xdata, ydata, color="red", marker="o")
plt.draw()

(略)
axnext = plt.axes([0.81, 0.05, 0.1, 0.075])
fig.canvas.mpl_connect('button_press_event', Index(ax).next)
(略)

#最初にクリックしたときだけ、どの場所クリックしても中央になるのは座標軸の方が変化するからっぽい。

228 名前:デフォルトの名無しさん [2016/10/10(月) 19:20:25.82 ID:cQ1gLyON.net]
>>220 >>221
回答ありがとうございます
参考にして書いて見た結果ボタンを押した位置に応じた場所に点がでるようになりました
度々ですみませんが今度は
1度ボタンを押した後、大きいキャンバスのどこかを2度目のクリックをしたときそこに
1度だけ点がでるようにしたいです
ここからどう変えれば良いでしょうか?(イメージとしてはボタンを押すと,次のクリックの入力待ちになるイメージです


from numpy.random import rand
import matplotlib.pyplot as plt
from matplotlib.widgets import Button

fig = plt.figure()
ax = fig.add_subplot(111)
plt.subplots_adjust(bottom=0.2)

class Index(object):
def __init__(self, ax):
self.ax = ax

def next(self, event):
xdata = event.xdata
ydata = event.ydata
self.ax.plot(xdata, ydata, color="red", marker="o")
plt.draw()

axnext = plt.axes([0.81, 0.05, 0.1, 0.075])
fig.canvas.mpl_connect('button_press_event', Index(ax).next)
bnext = Button(axnext, 'circle')
bnext.on_clicked(Index(ax).next)
plt.show()

229 名前:デフォルトの名無しさん [2016/10/11(火) 00:20:24.10 ID:7970w8cq.net]
>>222 追加
聞いてばかりですみません、もう一つ聞きたいことがありまして
ボタンを2つにした場合には
fig.canvas.mpl_connectをどうつなげるべきなのでしょうか?

class Index1(object):
def __init__(self, ax):
self.ax = ax

def next(self, event):
xdata = event.xdata
ydata = event.ydata
self.ax.plot(xdata, ydata, color="red", marker="o")
plt.draw()

def prev(self, event):
xdata = event.xdata
ydata = event.ydata
self.ax.plot(xdata, ydata, color="blue", marker="o")
plt.draw()


axnext = plt.axes([0.81, 0.05, 0.1, 0.075])
axprev = plt.axes([0.11, 0.05, 0.1, 0.075])
fig.canvas.mpl_connect('button_press_event', Index(ax).???)
bnext = Button(axnext, 'red')
bnext.on_clicked(Index(ax).next)
bnext = Button(axprev, 'blue')
bnext.on_clicked(Index(ax).prev)

230 名前:デフォルトの名無しさん [2016/10/11(火) 13:31:18.69 ID:QeFd4z39.net]
割とマジでレスするけど
>>220-221 が判らなかったのはともかく
それが解決してるのに >>222-223 が判らないっていうのは
相当知能に問題があるぞ
自分でできないなら向いてない
あきらめろ

231 名前:デフォルトの名無しさん [2016/10/11(火) 14:10:27.65 ID:7970w8cq.net]
>>224
指摘していただきましてすみません
>>223の方は
クラスをもう一つ作り
fig.canvas.mpl_connect('button_press_event', Index(ax).next)
fig.canvas.mpl_connect('button_press_event', Index(ax).prev)
で解決しました.
こちらに関しては少し変えたりなどで試行せずに質問してしまっていたため
申し訳なく思います
ただ>>222の方が
retrofocus28.blogspot.jp/2012/07/matplotlib.html
こちらを組み合わせながら行っても上手くいかず
入力待ちの方法が思い浮かばなかったために質問させていただいております
もしよろしければもう少しお付き合いください

232 名前:デフォルトの名無しさん [2016/10/12(水) 10:22:57.21 ID:G/hcjkA/.net]
>>225のものです
>>222について不器用な感じではありますがカウンターを用いて解決しました
ご迷惑をおかけしましてすみません

233 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 15:42:20.46 ID:z5IC4QPv.net]
グラフ描画機能は
matplotlibとRのggplot2は
どっちが優れてますか?

234 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 11:10:15.21 ID:qCTmGWaI.net]
pandas使ったらさあ、ちょっと前なのにパラメータがrows, colsからindexとcolumnに変わってたりと
大して意味のない気まぐれな変更多くて修正めんどくさくて大変だった
いったん決めたインターフェースは簡単に変えるなよ

235 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 11:37:03.12 ID:JsoExgwj.net]
>>228
2日越しのマルチ乙



236 名前:デフォルトの名無しさん mailto:sage [2017/05/05(金) 14:10:16.42 ID:hoK7VIFg.net]
すみません、
テラタームでログインして、サーバ上でPythonを触っているのですが、

その場合、Matplotlibで作成したグラフはどのようにしたら表示できますか?

237 名前:デフォルトの名無しさん mailto:sage [2017/05/05(金) 15:29:08.61 ID:E/UcmmKD.net]
sshでXのportforwardとかかな

238 名前:デフォルトの名無しさん mailto:sage [2017/05/05(金) 15:34:23.95 ID:hoK7VIFg.net]
>>231
portforwardといいますと?

239 名前:デフォルトの名無しさん [2017/07/20(木) 19:10:48.26.net]
ssh

240 名前:デフォルトの名無しさん [2017/11/10(金) 19:10:16.21 ID:81bW6/qw.net]
一番簡単なのはjupyter notebook使うことだね。

241 名前:デフォルトの名無しさん [2018/03/31(土) 19:51:41.75 ID:RRMYNfyR.net]
3D版のScatterでvmax指定が効かないな…
zticksも存在しないし
透明の点をプロットして拡げるしかないのか

242 名前:デフォルトの名無しさん [2018/05/23(水) 19:58:38.64 ID:Au5e7VGg.net]
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

UWPF3

243 名前:デフォルトの名無しさん [2018/07/05(木) 01:40:39.11 ID:RfoszcD2.net]
XAO

244 名前:デフォルトの名無しさん mailto:sage [2019/04/01(月) 18:19:51.64 ID:zbbYcLmt.net]
今は jupyter labやな

245 名前:デフォルトの名無しさん mailto:sage [2019/05/23(木) 10:35:23.92 ID:eybwZjzY.net]
matplotlib.plot にも sympy.geometory にも Polygon ってあるのな。
これをお互いに変換するのはどうしたらよいの? sympy からplot で良い。
sympy.geometry
Polygon(Point2D(94, 31), Point2D(388, 157), Point2D(472, 199), Point2D(850, 598), Point2D(787, 897), Point2D(110, 927))
matplotlib.plot
Polygon( [[ 94 31],[990 31],[990 927], [ 94 927]]) # np.array



246 名前:デフォルトの名無しさん [2019/05/23(木) 19:05:18.50 ID:KLPLdAni.net]
g = Polygon(Point2D(94, 31), Point2D(388, 157), Point2D(472, 199), Point2D(850, 598), Point2D(787, 897), Point2D(110, 927))
matplotlib.pyplot.Polygon(np.array(list(map(np.array, g.vertices))))

247 名前:デフォルトの名無しさん mailto:sage [2019/05/24(金) 15:20:24.68 ID:MR3FxfYE.net]
>>240 ありがとう。 なんとかかんとか自力でゴリゴリ変換してみてた。 参考にさせてもらいます。

248 名前:デフォルトの名無しさん [2019/05/24(金) 15:39:14.64 ID:/7dQNzPT.net]
g = Polygon(Point2D(94, 31), Point2D(388, 157), Point2D(472, 199), Point2D(850, 598), Point2D(787, 897), Point2D(110, 927))
matplotlib.pyplot.Polygon(g.vertices)

これでええわ

249 名前:デフォルトの名無しさん mailto:sage [2019/05/27(月) 14:09:07.82 ID:g1o9JmK9.net]
>>242 matplotlib ではPoint2Dは扱えないからダメでしょ。

hxy = np.array(list([i.x,i.y] for i in g.vertices))
とPoint2D(x,y) から (x,y) を取り出す必要がある。

つまり
g = Polygon(Point2D(94, 31), Point2D(388, 157), Point2D(472, 199), Point2D(850, 598), Point2D(787, 897), Point2D(110, 927))
matplotlib.pyplot.Polygon(np.array(list([i.x,i.y] for i in g.vertices)) )

250 名前:デフォルトの名無しさん [2019/05/27(月) 14:14:45.58 ID:eCbLD3a7.net]
うそはいかん
うちでは
ax.add_patch(matplotlib.pyplot.Polygon(g.vertices))
で動いてる

251 名前:デフォルトの名無しさん mailto:sage [2019/05/30(木) 09:30:54.81 ID:+xWYr2/c.net]
>>244 ごめんごめん、今のバージョンと古いバージョンの両方を使ってて、古い方で通らなかったから通らないものとして作ってた。
これで行けると色んな場面で楽になるな。

252 名前:デフォルトの名無しさん [2019/05/30(木) 13:10:41.17 ID:Ec3P7Zkh.net]
Mathematica Walfram|Alpha engine オプソなら無料に
https://forest.watch.impress.co.jp/docs/news/1186454.html
https://www.wolfram.com/engine/

253 名前:デフォルトの名無しさん [2019/06/08(土) 17:05:27.12 ID:e9TBdBJ9.net]
初心者で申し訳ないのですが、ここにいる天才達に質問です
マットプロットリブでリアルタイムの棒グラフの作成って可能ですか?

254 名前:デフォルトの名無しさん [2019/06/08(土) 17:27:21.35 ID:C/YlT49t.net]
OK

255 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 16:48:07.34 ID:aVo2U987.net]
matplotlibでリアルタイムはクソ遅いので、用途次第だと思う



256 名前:デフォルトの名無しさん [2019/06/15(土) 17:49:04.18 ID:NPtNfhdj.net]
Matplotlib&Seaborn実装ハンドブック
4798055433

257 名前:デフォルトの名無しさん [2019/06/17(月) 11:58:06.21 ID:hKpTfRM+.net]
>>249
そうなんですね。遅いのですか・・・
それならリアルタイムグラフを作成するのにおすすめの物ってなんですか?

258 名前:デフォルトの名無しさん [2019/06/17(月) 12:01:09.95 ID:hKpTfRM+.net]
https://inagoflyer.appspot.com/btcmac
↑このようなものを自分なりにもっと見やすくわかりやすく作りたいのですがおすすめってどのようなものですか?教えていただけると助かります。

259 名前:デフォルトの名無しさん [2019/06/17(月) 12:07:53.67 ID:D4rpPP9R.net]
特定用途に特化したものなら
自分で描いた方が速い

260 名前:デフォルトの名無しさん [2019/06/17(月) 12:24:46.31 ID:hKpTfRM+.net]
>>253
なるほど。
プログラム初心者なんで教えてほしいのですが、自分でコードを書いてからどこに作成したコードを張り付ければ
このようなグラフが出てくるようになるのですか?

261 名前:デフォルトの名無しさん mailto:sage [2019/06/21(金) 12:19:21.19 ID:/W/rELqI.net]
>>254 自分のPCで良いだろ。 他人に常時見せたいならサーバを借りる。

262 名前:デフォルトの名無しさん mailto:sage [2019/08/17(土) 00:03:58.94 ID:Ss8Q0izn.net]
金がかかる!(´・ω・`)

263 名前:デフォルトの名無しさん [2020/01/19(日) 09:11:27 ID:uiB9cWtd.net]
ボタンで画面を切り替えてグラフ表示したいのですが、画面1はグラフが1つ、画面2はグラフが2つあります。下のようにやってみましたが、グラフが重なったりWarningが出たりしてうまくいきません。どのようにするとよいでしょうか?
import numpy as np
import tkinter as tk
import matplotlib.pyplot as plt
from matplotlib.widgets import Slider

def b1():
plt.cla()
ax=fig.add_subplot(111)
x=np.arange(0,10,0.1)
y=np.sin(x)
ax.plot(x,y)
plt.show()

def b2():
plt.cla()
ax1=fig.add_subplot(211)
ax2=fig.add_subplot(212)
x=np.arange(0,20,0.1)
y=np.sin(x**2)
y2=np.sin(np.sqrt(x))*2
ax1.plot(x,y)
ax2.plot(x,y2)
plt.show()

root=tk.Tk()
btn1=tk.Button(root,text='1',command=b1)
btn2=tk.Button(root,text='2',command=b2)
btn1.grid(column=0,row=0)
btn2.grid(column=1,row=0)
fig=plt.figure(figsize=(8,4))
root.mainloop()

264 名前:デフォルトの名無しさん [2020/01/19(日) 13:14:35.47 ID:ehZNNwbS.net]
plt.show() もループするから
root.mainloop() と相性悪いんじゃね

265 名前:デフォルトの名無しさん [2020/01/19(日) 13:22:48 ID:ehZNNwbS.net]
あと fig もグローバルになってるから
各ボタンで重なる可能性はあるので
根本的に描き直す必要があるな



266 名前:デフォルトの名無しさん [2020/01/19(日) 13:38:03 ID:ehZNNwbS.net]
警告出るけど少しはマシかも知れん
https://pastebin.com/nB4bpTF1

267 名前:デフォルトの名無しさん [2020/01/19(日) 13:44:10 ID:ehZNNwbS.net]
同じ場所に上書きで良いならこっちか
https://pastebin.com/Bxd3C1hF
plt.cla() -> plt.clf() に注意

268 名前:デフォルトの名無しさん [2020/01/19(日) 13:48:20.78 ID:ehZNNwbS.net]
>>257 の本当にやりたかったことを忖度してみた
https://pastebin.com/9h94Q5GV

269 名前:デフォルトの名無しさん [2020/01/19(日) 18:02:25 ID:uiB9cWtd.net]
>>258-262
ソースまで貼っていただいてありがとうございます。
まさにこれがやりたかったんです〜。
show()じゃなくてcanvas.draw_idle()ってのを使うんですか。
pauseは消えるまで次の描画を待たないといけないということでしょうか。
(並列処理している?)
やっばりwebの見よう見まねじゃなくて体系的に学ばないといけませんね。

270 名前:デフォルトの名無しさん [2020/01/19(日) 18:09:11 ID:ehZNNwbS.net]
pauseの行を消すと何も表示されなくなるよ
そもそもなんでpauseって名前になってるのか判らんが
むしろpauseは待つんじゃなくてshowとは違って一瞬だけ書いて消して
次の処理をやってくれる感じ

271 名前:デフォルトの名無しさん mailto:sage [2020/05/13(水) 17:50:12 ID:LtaTjraG.net]
axvline で書き込んだ垂直線を
あとから消す(クリア)することはできますか?

272 名前:デフォルトの名無しさん [2020/05/13(水) 17:55:27 ID:oWyvBIrO.net]
できますよ

273 名前:デフォルトの名無しさん mailto:sage [2020/05/13(水) 18:05:11 ID:ffMOD4vy.net]
https://qiita.com/skotaro/items/08dc0b8c5704c94eafb9

274 名前:デフォルトの名無しさん mailto:sage [2021/02/28(日) 18:07:24.51 ID:mnh+qcDH.net]
color_list = ['darkblue', 'grey', 'darkred', 'darkred', 'darkred']
hatch_list = ['/', '//', '/', '//', '/']
plt.bar(left, height, color=color_list, hatch=hatch_list, width=width,
tick_label=labels, align='center')

上のコードでハッチが表示されません
最後の一行で直接hatch='/'と指定すればOKなのですが、
リストを使ってハッチの指定はできないのでしょうか?

275 名前:デフォルトの名無しさん mailto:sage [2021/02/28(日) 19:39:27.37 ID:KhV56l2K.net]
>>268
何参考にしたん?



276 名前:デフォルトの名無しさん mailto:sage [2021/02/28(日) 20:05:29.10 ID:mnh+qcDH.net]
>>269
以前Qiitaで色をlist形式で表示してたのを真似してグラフ作ってたので、
ハッチも同じくlistでいけるかと思ったのですが・・・

一つずつ指定するしかないのかな

277 名前:デフォルトの名無しさん [2023/01/09(月) 22:49:19.85 ID:oQuRlGBk.net]
seabornなどの戻り値でaxesだけいくつか受け取った時、画像を保存するのに一番早い方法は何でしょうか?現状は
fig,ax=plt.subplots()
として、axに戻り値を代入してfig.savefigしています

278 名前:デフォルトの名無しさん [2023/03/04(土) 19:03:35.85 ID:GYgfHVZLR]
伴奏型支援だのと日本国民は総幼稚園児と言わんばかりの人をハ゛力にした公務員利権拡大なんざ健常者は誰ひとりとして求めちゃいないわな
税金という名目で莫大な金銭強奪されてる中,支援か゛欲しいかと聞かれたら.そら相応の対価をよこせと肯定するのは当然ってた゛けの話だろ
この手のやり囗で税金泥棒どもが利権腐敗國家を築き上け゛てきて、対価との差は広か゛り続けているという現実をお前らは認識しないとな
人をだまくらかして儲ける商売の政治家を始め.何ひとつ価値生産しない人類に湧いた害虫公務員か゛莫大な税金を着服した残りカスか゛お前らに
不公平に分配されるだけの腐敗政府が拡大するほど、お前らの生活は苦しくなる一方だと、いい加減気つ゛いて頭から何もかも否定しないとな
公務員数から予算規模など現状の1/10の社會にしたた゛けで.企業は無能政府からの薄汚い金を待つことなく戰略的に投資してヰ丿ベ━ションか゛
生まれて企業の新陳代謝も進んで,世界最惡の地球破壊殺人腐敗組織公明党斎藤鉄夫と癒着することて゛黙認されてる強盜殺人經済も脱却して
人々か゛欲しいものか゛生み出されて市場か゛健全に活性化するものた゛が,こいつらの私利私欲のために日本か゛滅茶苦茶に破壊されてるのが現状な

創価学会員は、何百万人も殺傷して損害を与えて私腹を肥やし続けて逮捕者まで出てる世界最惡の殺人腐敗組織公明党を
池田センセ─か゛ロをきけて容認するとか本気て゛思ってるとしたら侮辱にもほどがあるそ゛!
https://i.imgur.com/hnli1ga.jpeg

279 名前:デフォルトの名無しさん mailto:sage [2023/03/13(月) 10:21:06.78 ID:kyo182dJ.net]
>>15
実測したらmatplotlibは18倍くらい掛かった
生成するグラフが多いと問題ある

280 名前:デフォルトの名無しさん mailto:sage [2023/03/16(木) 18:17:15.77 ID:YlN3ndGZ.net]
余所でやってください

281 名前:デフォルトの名無しさん [2023/05/22(月) 12:54:17.94 ID:I/awsh1Ue]
防衛名目の軍拡利権.少子化名目の私利私欲利権、旅行支援名目の氣候変動災害連発騷音私権侵害の強盜殺人利権による白々しい増税の数々
安全保障を取り巻く状況とか何も変わってないし.原爆使ってみたかった某ならす゛者國家はWW2て゛日本に先制攻撃させるエ作してたわけだか゛.
キチガイナゼレンスキーと共謀しての□シア攻撃と同じ手法て゛.台湾ついでに日本も巻き込んで自民公明と共謀してクソシナ攻撃したいだけな
貧乏人か゛子供なんて作ったら遺棄罪で逮捕するのか゛筋た゛ろうに,子供給付とか子や嫁と得た効用の対価を赤の他人から奪い取る不当利得だわな
他人の子を連れ込んて゛育てる行為を推進するとか、乱交推進して誰の孑か分からなくするとかしないと、憲法の下の平等なんて確保できんた゛ろ
小池テ゛タラメ百合孑なんて私立に行かせてる金持ちの親に毎年1О万くれてやるとか.税金で個人の資産形成させるなら税金泥棒公務員利権の
ナマポやら廃止して給付付き税額控除とかやるのが筋た゛ろ、つか風俗で働いて孑育てしてる自立した女はいくらでもいるだろうに、そんな女と
陳情寄生虫女と,温室効果ガスに騷音にコ口ナにとまき散らして人殺して他人の権利を強奪して儲けてる強盜殺人女とクス゛っぷり比較してみろ

創価学会員は、何百万人も殺傷して損害を与えて私腹を肥やし続けて逮捕者まで出てる世界最惡の殺人腐敗組織公明党を
池田センセ‐か゛口をきけて容認するとか本氣で思ってるとしたら侮辱にもほどがあるぞ!
https://i.imgur.com/hnli1ga.jpeg

282 名前:デフォルトの名無しさん mailto:sage [2023/09/24(日) 14:44:11.65 ID:0LC+gfeq.net]
なんでやねん、わからん

283 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<78KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef