↑ホーム(よかひよかとき) へ

   使用頻度大のものをコピー&ペーストで使えるよう 「覚え書」 としたものです。 参考になれば喜。 動作確認は自責で。
  JavaScript の覚え書   Javaアプレット の覚え書   Python の覚え書   Perl の覚え書
  おもちゃ箱---HTML5作品(JavaScript)、Javaアプレット作品、Python作品 を多数置いています


よかひよかときの Python の覚え書    .

 PyScript を用いれば、Python で書いた作品を Webページ(HTML)で表示させることができる。やり方は次の通りである。
  (Python、PyScript のインストールや環境構築が不要の気軽さで作動する。下のサンプル-1 、2 のように
 赤字の所を追加すればよいだけである。サンプルをそのままコピー&ペイスト でお試しください)
 (ただし、2022年5月現在 PyScriptアルファ版で、今後仕様が変わる、実行速度は少々遅い、など発展途上の状況のものである)

【サンプル-1】 テキスト表示
  ・HTML のファイル名を ****.html とする (**** は任意)
    (例) test1.html として、その内容を次のようにする

<!DOCTYPE html>
<html lang="ja">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
	<title>PyScriptの使い方の例1</title>
	<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
	<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
</head>
<body>
<py-script>
print('Hello World! こんにちは 元気です')
</py-script>
</body>
</html>

実行結果
Hello World! こんにちは 元気です



【サンプル-2】 図形を描く(点,直線,円) (Pythonで図形を描くやり方は種々あります。ここでは一例です)
  ・HTML のファイル名を ****.html とする (**** は任意)
    (例) test2.html として、その内容を次のようにする

<!DOCTYPE html>
<html lang="ja">
<head>
	<meta charset="UTF-8" />
	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
	<title>PyScript</title>
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
	<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
<py-env>
- matplotlib
</py-env>
</head>
<body>
<div id="plot"></div>
<py-script output="plot">

import matplotlib.pyplot as plt
import numpy as np

fig=plt.figure()
ax=fig.add_subplot()
ax.axes.xaxis.set_visible(False) # x軸,ラベル,目盛りを非表示にする
ax.axes.yaxis.set_visible(False) # y軸,ラベル,メモリを非表示にする
plt.xlim(0,800) # x軸の範囲
plt.ylim(0,600) # y軸の範囲

x=20
y=570
plt.scatter(x,y)

plt.plot([40,160],[300,570],color="green")
plt.plot([60,200],[300,500],color="red")
plt.xlabel("X")
plt.ylabel("Y")

draw_circle=plt.Circle((450,350),200,fill=False)
ax.add_artist(draw_circle)

plt.show()
fig

</py-script>
</body>
</html>

実行結果



■コメント文
■図形を描く

■コメント文   このページのトップへ 説明更新日
Python #

○ その行の # より後ろに記述された部分はコメントになる。
(なお、HTMLでのコメントは、<!--   -->。また、スタイルシートでのコメントは、/*   */。)
2022. 6. 5
■図形を描く   このページのトップへ 更新日
Python   Python で図形を描くやり方は種々あります(人によって異なり混乱します)が、ここでのやり方はあくまで私のやり方です。

 上のサンプルで示したように、PyScript を用いれば Python も PyScript もインストールおよび環境構築が不要です。
  以下のコードをそのままコピー&ペーストし(もちろん他に自分で好きに付け加えることができる)、HTMLファイル (****.html) を作り
 それをブラウザで開くだけ図形が描けます。後は、描画位置、大きさ、色などを自由に変えて使用できます。


// ■点を描く-------------------------------
<!DOCTYPE html>
<html lang="ja">
<head>
	<meta charset="UTF-8" />
	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
	<title>PyScript</title>
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	
<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
<py-env>
- matplotlib
</py-env>

</head>
<body>
<py-script>
import matplotlib.pyplot as plt
fig=plt.figure(figsize=(9.0,6.4),dpi=100) # ウィンドウのサイズ(*100 したものがピクセル値)
ax=fig.add_subplot() # 1個のグラフを統括するクラス.グラフ枠,目盛,軸タイトルなどの描画
plt.xlim(0,900) # x軸の範囲
plt.ylim(0,640) # y軸の範囲
ax.set_position([0,0,1,1]) # ([枠の左辺,下辺,横幅,高さ]) ウィンドウ全体をグラフ枠内にし,枠,目盛などを描画しない

x=20
y=570
plt.scatter(x,y)

plt.show() # ウィンドウを表示
fig
<py-script>

</body>
</html>




// ■直線を引く-------------------------------
<!DOCTYPE html>
<html lang="ja">
<head>
	<meta charset="UTF-8" />
	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
	<title>PyScript</title>
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
<py-env>
- matplotlib
</py-env>

</head>
<body>
<py-script>
import matplotlib.pyplot as plt
fig=plt.figure(figsize=(9.0,6.4),dpi=100) # ウィンドウのサイズ(*100 したものがピクセル値)
ax=fig.add_subplot() # 1個のグラフを統括するクラス.グラフ枠,目盛,軸タイトルなどの描画
plt.xlim(0,900) # x軸の範囲
plt.ylim(0,640) # y軸の範囲
ax.set_position([0,0,1,1]) # ([枠の左辺,下辺,横幅,高さ]) ウィンドウ全体をグラフ枠内にし,枠,目盛などを描画しない

plt.plot([40,160],[300,570],color="green")
plt.plot([60,200],[300,500],color="red")
plt.xlabel("X")
plt.ylabel("Y")

plt.show() # ウィンドウを表示
fig
<py-script>

</body>
</html>




// ■長方形を描く-----------------------------
<!DOCTYPE html>
<html lang="ja">
<head>
	<meta charset="UTF-8" />
	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
	<title>PyScript</title>
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
<py-env>
- matplotlib
</py-env>

</head>
<body>
<py-script>
import matplotlib
import matplotlib.pyplot as plt

fig=plt.figure(figsize=(9.0,6.4),dpi=100) # ウィンドウのサイズ(*100 したものがピクセル値)
ax=fig.add_subplot() # 1個のグラフを統括するクラス.グラフ枠,目盛,軸タイトルなどの描画

plt.xlim(0,900) # x軸の範囲
plt.ylim(0,640) # y軸の範囲
ax.set_position([0,0,1,1]) # ([枠の左辺,下辺,横幅,高さ]) ウィンドウ全体をグラフ枠内にし,枠,目盛などを描画しない

rect=plt.Rectangle((80,120),200,400,fc="#0000ff",fill=False) # 左下角=(80,120),幅=200,高さ=400 の四角形
ax.add_patch(rect)

rect=plt.Rectangle((320,120),100,300,fc="#ff00ff",fill=True) # 左下角=(320,120),幅=100,高さ=300 の四角形
ax.add_patch(rect)

plt.show() # ウィンドウを表示
fig
<py-script>

</body>
</html>




// ■円を描く---------------------------------
<!DOCTYPE html>
<html lang="ja">
<head>
	<meta charset="UTF-8" />
	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
	<title>PyScript</title>
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
<py-env>
- matplotlib
</py-env>

</head>
<body>
<py-script>
import matplotlib
import matplotlib.pyplot as plt

fig=plt.figure(figsize=(9.0,6.4),dpi=100) # ウィンドウのサイズ(*100 したものがピクセル値)
ax=fig.add_subplot() # 1個のグラフを統括するクラス.グラフ枠,目盛,軸タイトルなどの描画

plt.xlim(0,900) # x軸の範囲
plt.ylim(0,640) # y軸の範囲
ax.set_position([0,0,1,1]) # ([枠の左辺,下辺,横幅,高さ]) ウィンドウ全体をグラフ枠内にし,枠,目盛などを描画しない

circle = plt.Circle((180,220),150,fc="#ff0000",fill=False) # 中心の座標=(180,220),半径=150 の円
ax.add_patch(circle)

circle = plt.Circle((450,220),80,fc="#ffff00",fill=True) # 中心の座標=(450,220),半径=80 の円
ax.add_patch(circle)

plt.show() # ウィンドウを表示
fig
<py-script>

</body>
</html>




// ■多角形を描く-------------------------------
<!DOCTYPE html>
<html lang="ja">
<head>
	<meta charset="UTF-8" />
	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
	<title>PyScript</title>
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>
<py-env>
- numpy
- matplotlib
</py-env>

</head>
<body>
<py-script>
import matplotlib
import matplotlib.pyplot as plt

fig=plt.figure(figsize=(9.0,6.4),dpi=100) # ウィンドウのサイズ(*100 したものがピクセル値)
ax=fig.add_subplot() # 1個のグラフを統括するクラス.グラフ枠,目盛,軸タイトルなどの描画

plt.xlim(0,900) # x軸の範囲
plt.ylim(0,640) # y軸の範囲
ax.set_position([0,0,1,1]) # ([枠の左辺,下辺,横幅,高さ]) ウィンドウ全体をグラフ枠内にし,枠,目盛などを描画しない

points=[[150,120],[250,180],[300,420],[90,390],[150,120]]
patch=patches.Polygon(xy=points,closed=True)
ax.add_patch(patch)

plt.show() # ウィンドウを表示
fig
<py-script>

</body>
</html>






2022. 6. 5

このページのトップへ
**********************************************************************************
Copyright(C) 2022-,YokahiYokatoki