Python - 描画(scatter, savefig)とカラーブック
2022-02-26 17:11:55
最近、大きな論文を書くのに忙しく、その中でPythonを使って模式図を描いたところ、結構うまくいったので、ついでにまとめておくことにします。
1、ストレートにコードへ
# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False
#matplotlib will have problems displaying Chinese in the drawing, need these two lines to set the default font
plt.xlabel('X')
plt.ylabel('Y')
plt.xlim(xmax=9,xmin=0)
plt.ylim(ymax=9,ymin=0)
#draw two (0-9) axes and set the axis labels x, y
x1 = np.random.normal(2,1.2,300) # randomly generate 300 floating point numbers with mean 2 and variance 1.2, that is, the first cluster of points of the x-axis coordinates
y1 = np.random.normal(2,1.2,300) # randomly generate 300 floating-point numbers with mean 2 and variance 1.2, i.e., the y-axis coordinates of the first cluster of points
x2 = np.random.normal(7.5,1.2,300)
y2 = np.random.normal(7.5,1.2,300)
colors1 = '#00CED1' # the color of the dot
colors2 = '#DC143C'
area = np.pi * 4**2 # dot area
# Draw a scatter plot
plt.scatter(x1, y1, s=area, c=colors1, alpha=0.4, label='Category A')
plt.scatter(x2, y2, s=area, c=colors2, alpha=0.4, label='Category B')
plt.plot([0,9.5],[9.5,0],linewidth = '0.5',color='#000000')
plt.legend()
plt.savefig(r'C:\Users\jichao\Desktop\大论文\12345svm.png', dpi=300)
plt.show()
第二に、効果
個人的には、いい感じに仕上がったので満足です
三、コード解析
上の図は、主に matplotlib.pyplot モジュールのいくつかの関数を使用しています。 https://matplotlib.org/index.html
1, rcParams
rcParamsは、描画時の基本的なパラメータを設定するために使用されます。
2, 散布
matplotlib.pyplot.
scatter
(
x
,
y
,
s=None
,
c=None
,
マーカ=なし
,
cmap=None
,
norm=None
,
vmin=None
,
vmax=None
,
α=None
,
線幅=なし
,
verts=None
,
edgecolors=なし
,
*
,
データなし
,
**kwargs
)
x,y - 設定値の位置です.
s - 点の大きさです.
c - ドットの色です。
marker - ドットの形状です。
cmap - 色のグラデーションを制御するために使われます。 http://blog.sina.com.cn/s/blog_c39df0460102xifx.html
ノルム - 明度
vmin, vmax - 正規化されたルミナンス.
alpha - 点の透明度。透明度をうまく設定することで、グラフをきれいに見せることができます。
linewidths, verts, edgcolors - 点のエッジ線の幅、(x, y)のシーケンス、エッジ線の色です。
**kwargs-- パラメータを辞書として入力する
3, savefig
savefig(fname, dpi=None, facecolor='w', edgecolor='w',
orientation='portrait', papertype=None, format=None,
transparent=False, bbox_inches=None, pad_inches=0.1,
frameon=None, metadata=None)
使用される2つの主要なパラメータは、fname - 保存するパス、dpi - 1インチあたりのピクセル数で、シャープネスまたはファインネスとして解釈できます。
第四に、配色
この2行のコード - '#00CED1' - が色の値です。
colors1 = '#00CED1' # the color of the dot
colors2 = '#DC143C'
すべての色の名前と値。
'aliceblue': '#F0F8FF',
'antiquewhite': '#FAEBD7',
'aqua': '#00FFFF',
'aquamarine': '#7FFFD4',
'azure': '#F0FFFF',
'beige': '#F5F5DC',
'bisque': '#FFE4C4',
'black': '#000000',
'blanchedalmond': '#FFEBCD',
'blue': '#0000FF',
'blueviolet': '#8A2BE2',
'blue': '#0000FF', 'blueviolet': '#8A2BE2', 'brown': '#A52A2A',
'burlywood': '#DEB887',
'cadetblue': '#5F9EA0',
'chartreuse': '#7FFF00',
'chocolate': '#D2691E',
'coral': '#FF7F50',
'cornflowerblue': '#6495ED',
'cornsilk': '#FFF8DC',
'crimson': '#DC143C',
'cyan': '#00FFFF',
'darkblue': '#00008B',
'darkcyan': '#008B8B',
'darkgoldenrod': '#B8860B',
'darkgray': '#A9A9A9',
'darkgreen': '#006400',
'darkkhaki': '#BDB76B',
'darkmagenta': '#8B008B',
'darkolivegreen': '#556B2F',
'darkorange': '#FF8C00',
'darkorchid': '#9932CC',
'darkred': '#8B0000',
'darksalmon': '#E9967A',
'darkseagreen': '#8FBC8F',
'darkslateblue': '#483D8B',
'darkslategray': '#2F4F4F',
'darkturquoise': '#00CED1',
'darkviolet': '#9400D3',
'deeppink': '#FF1493',
'deepskyblue': '#00BFFF',
'dimgray': '#696969',
'dodgerblue': '#1E90FF',
'firebrick': '#B22222',
'floralwhite': '#FFFAF0',
'forestgreen': '#228B22',
'fuchsia': '#FF00FF',
'gainsboro': '#DCDCDC',
'ghostwhite': '#F8F8FF',
'gold': '#FFD700',
'goldenrod': '#DAA520',
'gray': '#808080',
'green': '#008000',
'greenyellow': '#ADFF2F',
'honeydew': '#F0FFF0',
'hotpink': '#FF69B4',
'indianred': '#CD5C5C',
'indigo': '#4B0082',
'ivory': '#FFFFF0',
'khaki': '#F0E68C',
'lavender': '#E6E6FA',
'lavenderblush': '#FFF0F5',
'lawngreen': '#7CFC00',
'lemonchiffon': '#FFFACD',
'lightblue': '#ADD8E6',
'lightcoral': '#F08080',
'lightcyan': '#E0FFFF',
'lightgoldenrodyellow': '#FAFAD2',
'lightgreen': '#90EE90',
'lightgray': '#D3D3D3',
'lightpink': '#FFB6C1',
'lightsalmon': '#FFA07A',
'lightseagreen': '#20B2AA',
'lightskyblue': '#87CEFA',
'lightslategray': '#778899',
'lightsteelblue': '#B0C4DE',
'lightyellow': '#FFFFE0',
'lime': '#00FF00',
'limegreen': '#32CD32',
'linen': '#FAF0E6',
'magenta': '#FF00FF',
'maroon': '#800000',
'mediumaquamarine': '#66CDAA',
'mediumblue': '#0000CD',
'mediumorchid': '#BA55D3',
'mediumpurple': '#9370DB',
'mediumseagreen': '#3CB371',
'mediumslateblue':
<イグ
関連
-
アクセス違反の読み取り位置 ファイルやオブジェクトを書き込む関数にベクターを渡すとエラーになる
-
原因:java.io.IOException。CreateProcess error=5, アクセス拒否されました。CreateProcess error=2, システムが指定されたファイルを見つけられませんでした。
-
mac git エラーを使用します。.git/FETCH_HEAD を開けない: パーミッションが拒否されました。
-
Uncaught ReferenceError: require is not defined at ES6.js:1 (anonymous) @ ES6.js:1
-
画像ダウンロードの問題
-
ArrayAdapter がリソース ID に TextView を要求する問題を解決する方法
-
java introduces package error この行のマーカーは複数あります。
-
pythonのpandas_datareaderパッケージの紹介
-
AVD システムパスが見つかりません。Please define ANDROID_SDK_ROOT この問題は、必ずしもパス設定にあるわけではありません。
-
Error:SSL peer shut down incorrectlyの完全な解決法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
gitアップロードファイルのエラーを修正する方法 [rejected] master -> master (fetch first) error: failed to push some refs to '.
-
undefined! [rejected] マスター -> マスター (フェッチファースト) プッシュコードエラー
-
Tensorflow】エラー報告の落とし穴--入力配列を形状(100,784)から形状(100)にブロードキャストできなかった。
-
linux error ttyname failed: デバイスに不適切な ioctl Solution
-
要約:ModuleNotFoundErrorを解決する。tools という名前のモジュールがない問題
-
輸出が定義されていない
-
Python がエラー TypeError: write() 引数はバイトではなく str でなければならない
-
SQLステートメント共通エラー。"不明な列 'xxx' in 'where 節 "どのように解決するには?
-
ApiModelProperty の使用方法
-
javaHow to create array whose elements are type ArrayList?