用python畫 pareto front


用python畫 pareto front

覺得有用的話,歡迎一起討論相互學習~

我的微博我的github我的B站

2D pf

import os
import matplotlib.pyplot as plt
import numpy as np


def Read_Files(filename):
    X_axis = []  # X
    Y_axis = []  # Y
    with open(filename, 'r') as f:
        for line in f.readlines():
            x = line.split(" ")[0]
            y = line.split(" ")[1]
            X_axis.append(float(x))
            Y_axis.append(float(y))
    f.close()
    return X_axis, Y_axis

def plot_PF(X_axis, Y_axis):
    # 可以通過c 參數設置顏色
    # T = np.arctan2(Y_axis, X_axis)
    # plt.scatter(X_axis, Y_axis, s=2, c=T, alpha=0.5)
    plt.scatter(X_axis, Y_axis, s=20, alpha=0.5)
    plt.savefig(Figname + '.png', dpi=600)
    plt.show()


Filename = './data/CIHS1_hType_circle.pf'
Figname='CIHS1_hType_circle'
X_axis, Y_axis = Read_Files(Filename)
T = np.arctan2(Y_axis, X_axis)
plot_PF(X_axis, Y_axis)

3D pf

import os
import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D


def Read_Files(filename):
    X_axis = []  # X
    Y_axis = []  # Y
    Z_axis = []  # Z
    with open(filename, 'r') as f:
        for line in f.readlines():
            # print(line)
            x = line.split("\t")[0]  # 注意,這里不是使用空格,而是使用Tab制表符進行分割
            # print(x)
            y = line.split("\t")[1]
            # print(y)
            z = line.split("\t")[2]
            # print(z)
            X_axis.append(float(x))
            Y_axis.append(float(y))
            Z_axis.append(float(z))
    f.close()
    return X_axis, Y_axis, Z_axis


def plot_PF(X_axis, Y_axis, Z_axis):

    ax = plt.figure().add_subplot(111, projection='3d')
    # c 設置顏色,alpha設置透明度,s設置點的大小
    ax.scatter(X_axis, Y_axis, Z_axis, c='b', alpha=0.5, s=3)

    plt.savefig(Figname + '.png', dpi=600)
    plt.show()


Filename = './data/hType_sphere.pf'
Figname = 'hType_sphere'
X_axis, Y_axis, Z_axis = Read_Files(Filename)
plot_PF(X_axis, Y_axis, Z_axis)

Note

  • 如果使用Pycharm的圖片展示,則畫出來的3D圖形是不能夠旋轉的,此時必須關閉pycharm的"Show plots in tool windows"

https://blog.csdn.net/u013555719/article/details/83896790

  • 以下是使用pycharm畫出的圖形
  1. “File—>Settings”,打開Settings窗口。
  2. 找到“Python Scientific”,去除右邊候選框中的勾號。
  • 用上述步驟后使用python原生畫圖工具顯示的圖形


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM