matplotlib入门使用画图实例及其他内容备忘记录

import numpy as np
import matplotlib.pyplot as plt
N = 1000
x = np.random.randn(N)
y = np.random.randn(N)
plt.scatter(x, y)
plt.show()
  • c 点的颜色或颜色序列,默认蓝色。其它如c = ‘r’ (red); c = ‘g’ (green); c = ‘k’ (black) ; c = ‘y’(yellow)
  • plt.plot() 绘制线性图,plt.scatter() 散点图
  • 绘制3D图时,如果有报错,projection=’3d’相关有报错的话使用如下from mpl_toolkits.mplot3d import Axes3D
fig=plt.figure()  
ax=Axes3D(fig)  

《机器学习实战》书籍中第一章 KNN算法 约会的数据集三维显示代码

import numpy as np
from sklearn import preprocessing
import matplotlib as mpl
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D


def data_display(data_path):
    mpl.rcParams['font.sans-serif'] = [u'SimHei']  # 解决中文显示问题
    mpl.rcParams['axes.unicode_minus'] = False  #用来正常显示负号
    #在MAC上不行
    data = np.loadtxt(data_path)[:, 0]
    pre_data = preprocessing.scale(data)
    data2 = np.loadtxt(data_path)[:, 1]
    data3 = np.loadtxt(data_path)[:, 2]
    data4 = np.loadtxt(data_path)[:, 3]
    all_data = np.column_stack((pre_data, data2, data3, data4))
    pre_data3 = all_data[all_data[:, 3] == 3]
    x3 = pre_data3[:, 0]
    y3 = pre_data3[:, 1]
    z3 = pre_data3[:, 2]
    pre_data2 = all_data[all_data[:, 3] == 2]
    x2 = pre_data2[:, 0]
    y2 = pre_data2[:, 1]
    z2 = pre_data2[:, 2]
    pre_data1 = all_data[all_data[:, 3] == 1]
    x1 = pre_data1[:, 0]
    y1 = pre_data1[:, 1]
    z1 = pre_data1[:, 2]
    ax = plt.figure().add_subplot(111, projection='3d')
    ax.scatter(x3, y3, z3, c='r', label=u'极具魅力')
    ax.scatter(x2, y2, z2, c='g', label=u'一般魅力')
    ax.scatter(x1, y1, z1, c='y', label=u'不喜欢')
    plt.legend(loc='upper right')
    ax.set_xlabel(u'飞行')
    ax.set_ylabel(u'游戏')
    ax.set_zlabel(u'冰激凌')
    plt.grid()  #添加网格
    plt.show()

if __name__ == '__main__':
    data_display('datingTestSet2.txt')

这里写图片描述

在linux系统(centos)下如何使用matplotlib画图
运行到画图模块报错提示:

_tkinter.TclError: no display name and no $DISPLAY environment variable

没有安装画图显示的相关东西。
可以不用安装,修改画图配置,把画出的图保存下来再查看。

linux没有GUI的情况下使用matplotlib绘图:
import matplotlib as mpl
mpl.use(‘Agg’)
plt.plot(x,y)
plt.savefig(“/home/yourname/picFaster.jpg”)

import matplotlib as mpl
mpl.use(‘Agg’)
需要添加在import matplotlib.pyplot之前,否则无效

import matplotlib as mpl
mpl.use(‘Agg’)
import matplotlib.pyplot as plt

使用 %pylab 可以查看matplotlib后端用的是什么
这里写图片描述

别人写的不错的matplotlib 入门文章:
https://www.cnblogs.com/xubing-613/p/5895948.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值