前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Matplotlib的使用

Matplotlib的使用

作者头像
羊羽shine
发布2019-05-28 13:30:47
5200
发布2019-05-28 13:30:47
举报
文章被收录于专栏:Golang开发Golang开发

安装

安装numpy

代码语言:javascript
复制
pip3 install numpy

安装matplotlib

代码语言:javascript
复制
pip3 install matplotlib

基础

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt

x1 = np.linspace(-3, 3)
y1 = 2*x1-2
y2 = -2*x1-2
plt.plot(x1, y1)
plt.plot(x1, y2)
plt.show()

image.png

设置坐标轴

plt.xlim设置x坐标轴范围 plt.ylim设置y坐标轴范围 plt.xlabel设置x坐标轴名称 plt.ylabel设置y坐标轴名称 plt.xticks设置x轴刻度 plt.yticks设置y轴刻度

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-3, 3,)
y1 = 2 *x+1
y2 = x**2

plt.figure()
plt.plot(x,y2)
plt.plot(x,y1,color='red', linewidth=1.0, linestyle='--')
plt.xlim(-1,2)
plt.ylim(-2,3)
plt.xlabel('x')
plt.ylabel('y')

new_ticks = np.linspace(-1,2,5)
print(new_ticks)
plt.xticks(new_ticks)
plt.yticks([-2,-1.8,-1,1.22,3])
plt.show()

image.png

设置边框

plt.gca获取当前坐标轴信息. 使用.spines设置边框,使用.set_color设置边框颜色:默认白色.

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-3, 3)
y1 = 2 *x+1
plt.plot(x,y1)
plt.xlim(-1,2)
plt.ylim(-2,3)
ax = plt.gca()
ax.spines['top'].set_color('none')
ax.spines['right'].set_color('none')
plt.show()

image.png

调整坐标轴位置

使用.xaxis.set_ticks_position设置x坐标刻度数字或名称的位置(所有位置:top,bottom,both,default,none)。使用.set_position设置边框位置:y=0的位置;(位置所有属性:outward,axes,data)

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-3, 3)
y1 = x**2
plt.plot(x,y1)
plt.xlim(-3,3)
plt.ylim(-1,3)
ax = plt.gca()
ax.xaxis.set_ticks_position('bottom')
ax.spines['top'].set_color('none')
ax.spines['right'].set_color('none')
ax.spines['left'].set_position(('data', 0))
ax.spines['bottom'].set_position(('data', 0))
plt.show()

image.png

图例

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-3, 3)
y1 = x**2
l1, = plt.plot(x,y1,label='square line')
y2 = 2*x + 1
l2, = plt.plot(x,y2,color='red', linewidth=1.0, linestyle='--', label='linear line')
plt.xlim(-3,3)
plt.ylim(-1,3)
#plt.legend(loc='lower right')
plt.legend(handles=[l1, l2], labels=['x^2', '2*x+1'],  loc='best')
ax = plt.gca()
ax.xaxis.set_ticks_position('bottom')
ax.spines['top'].set_color('none')
ax.spines['right'].set_color('none')
ax.spines['left'].set_position(('data', 0))
ax.spines['bottom'].set_position(('data', 0))
plt.show()

l1, l2,要以逗号结尾, 因为plt.plot() 返回的是一个列表. 位置信息

代码语言:javascript
复制
               ===============   =============
                Location String   Location Code
                ===============   =============
                'best'            0
                'upper right'     1
                'upper left'      2
                'lower left'      3
                'lower right'     4
                'right'           5
                'center left'     6
                'center right'    7
                'lower center'    8
                'upper center'    9
                'center'          10
                ===============   =============

image.png

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.05.05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装
  • 基础
  • 设置坐标轴
  • 设置边框
  • 调整坐标轴位置
  • 图例
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档