python画图

2018-03-21  本文已影响60人  程序猪小羊

0

  1. 生成横坐标
  2. 在一张图上画多条曲线
  3. shape
'''
Plot the Prediction using Different Regression Model
'''
lw = 2 # linewidth
x_data = np.linspace(1,200,200)
print(x_data.shape,test_tar.shape)
plt.scatter(x_data, test_tar[:,0], color='darkorange', label='data')
plt.plot(x_data, rf_pred, color='navy', lw=lw, label='Random Forest')
plt.plot(x_data, sv_pred, color='c', lw=lw, label='SVR')
plt.plot(x_data, adb_pred, color='cornflowerblue', lw=lw, label='Decision Tree w/ AdaBoost')
plt.xlabel('data')
plt.ylabel('target')
plt.title('Plot the Prediction using Different Regression Model')
plt.legend()
plt.show()

1 画散点+直线图的小例子「转,侵删」

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

# 数据量。
SIZE = 13
# 纵轴数据。np.linspace 返回一个一维数组,SIZE指定数组长度。
# 数组最小值是-6,最大值是6。所有元素间隔相等。整个数组是
# 个等差数列。
Y = np.linspace(-6, 6, SIZE)
# 横轴数据。
X = np.linspace(-2, 3, SIZE)

fig = plt.figure()
# 画图区域分成1行1列。选择第一块区域。
ax1 = fig.add_subplot(1,1, 1)
# 标题
ax1.set_title("SCATTER PLOT")
# 让散点图的数据更加随机。
random_x = []
random_y = []
for i in range(SIZE):
    random_x.append(X[i] + random.uniform(-1, 1)) 
for i in range(SIZE):
    random_y.append(Y[i] + random.uniform(-1, 1)) 
RANDOM_X = np.array(random_x) # 散点图的横轴。
RANDOM_Y = np.array(random_y) # 散点图的纵轴。

# 画散点图。
ax1.scatter(RANDOM_X, RANDOM_Y)
# 横轴名称。
ax1.set_xlabel("x")
# 纵轴名称。
ax1.set_ylabel("y")

# 直线图
ax1.plot(X, Y)
plt.show()
image.png

My code

    # plot 2
    
    target_data = sort_combine['True_data']
    output_data = sort_combine['Out_data']


    plt.plot(x_indx, target_data)
    plt.scatter(x_indx, output_data, marker = 'x', color = 'm', label='output')
    
    plt.show()

例子2 加图例

# with legend  
f2 = plt.figure(2)  
idx_1 = find(label==1)  
p1 = plt.scatter(x[idx_1,1], x[idx_1,0], marker = 'x', color = 'm', label='1', s = 30)  
idx_2 = find(label==2)  
p2 = plt.scatter(x[idx_2,1], x[idx_2,0], marker = '+', color = 'c', label='2', s = 50)  
idx_3 = find(label==3)  
p3 = plt.scatter(x[idx_3,1], x[idx_3,0], marker = 'o', color = 'r', label='3', s = 15)  
plt.legend(loc = 'upper right')  

# 画多个图python不需要“hold on”
image.png

python matplotlib库

目录

plot和subplot有啥区别吗?

上一篇下一篇

猜你喜欢

热点阅读