ScrollView Jenkins reactjs curl 抖音 notifications NEJ 支付网站建设 郑州网站开发 datetimepicker赋值 python安装程序 java的substring 搭建java开发环境 javafinally java链接mysql数据库 java正则替换 java获取当前ip java怎么编译 java将数据写入文件 获取当前时间java java停止线程 销售清单打印软件 cg模宝 adobe卸载工具 jdk9下载 t470拆机 绿幕抠图 国都证券官网下载 透视网格工具怎么取消 逗号的作用 qq浏览器手机版 pr脱机文件怎么恢复 字体模糊 易语言数组 devenv js对象深拷贝 vue数组更新 ps怎么做印章效果 声如银铃 java游戏高级编程
当前位置: 首页 > 学习教程  > 编程语言

matplotlib样式美化

2020/8/11 20:09:49 文章标签:

文章目录

    • 标题及轴标签
    • 样式
    • 网格
    • 内置样式
    • 线条及填充
    • 交差及填充

标题及轴标签

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False # 用来正常显示负号


import numpy as np

def f(t):
    s1 = np.cos(2*np.pi*t)
    e1 = np.exp(-t)
    return s1*e1

t1 = np.arange(0.0, 5.0, 0.1)
t2 = np.arange(0.0, 5.0, 0.02)
t3 = np.arange(0.0, 2.0, 0.01)

box = dict(facecolor='yellow', pad=5, alpha=0.2)
#整个画板的标题
plt.suptitle('我的滑板吧标题', fontsize=16, fontweight='bold')
plt.subplots_adjust(left=0.2, wspace=0.8, top=0.8)

plt.subplot(121)
plt.plot(t1, f(t1), 'o', t2, f(t2), '-')
plt.title('画板1',color='r')
plt.ylabel('Y轴',bbox=box)

plt.subplot(122)
plt.plot(t3, np.cos(2*np.pi*t3), '--')
plt.title('画板2',color='b')
plt.xlabel('X轴',bbox=box)
plt.ylabel('Y轴',bbox=box)

执行结果:
在这里插入图片描述

样式

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False # 用来正常显示负号


import numpy as np

x1 = np.linspace(0.0, 5.0)
x2 = np.linspace(0.0, 2.0)

y1 = np.cos(2 * np.pi * x1) * np.exp(-x1)
y2 = np.cos(2 * np.pi * x2)

plt.subplot(2, 1, 1)
# "o-r"中r表示红色,o表示实点,-表示连接线
# 可以写成 ro- 或 or- 或 -or 顺序不要求
plt.plot(x1, y1, 'o-r')  


plt.subplot(2, 1, 2)
plt.plot(x2, y2, '.-')

plt.show()

执行结果:
在这里插入图片描述

网格

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False # 用来正常显示负号


import numpy as np

t = np.arange(0.0, 2.0, 0.01)
s = np.sin(2 * np.pi * t)

fig, ax = plt.subplots()
ax.plot(t, s)
# 网格
ax.grid(True, linestyle='-.')
# 坐标
# ax.tick_params(axis='both',labelcolor='r', labelsize='medium', width=3)
ax.tick_params(axis='x',labelcolor='r', labelsize='medium', width=3)
ax.tick_params(axis='y',labelcolor='b', labelsize='medium', width=2)

# 注释
ax.annotate("这是注释\n"
                 "这是注释", (0.5, 0.5),
                 xycoords="axes fraction", va="center", ha="center",
                 bbox=dict(boxstyle="round, pad=1", fc="w"))


plt.show()

执行结果:
在这里插入图片描述

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False # 用来正常显示负号


import numpy as np

data = np.random.randn(30).cumsum()
plt.plot(data, 'r--', label='Default',marker='o') 
# 写这步运行直接添加到上图中
plt.plot(data, 'k-', drawstyle='steps-post', label='steps-post')
plt.legend(loc='best')

执行结果:
在这里插入图片描述

内置样式

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False # 用来正常显示负号


import numpy as np

plt.style.use('dark_background')

fig, ax = plt.subplots()

L = 6
x = np.linspace(0, L)
ncolors = len(plt.rcParams['axes.prop_cycle'])
shift = np.linspace(0, L, ncolors, endpoint=False)
for s in shift:
    ax.plot(x, np.sin(x + s), 'o-')
ax.set_xlabel('x-axis')
ax.set_ylabel('y-axis')
ax.set_title("'dark_background' style sheet")

plt.show()

执行结果:
在这里插入图片描述

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False # 用来正常显示负号


import numpy as np

plt.style.use('fivethirtyeight')

x = np.linspace(0, 10)

# Fixing random state for reproducibility
np.random.seed(19680801)

fig, ax = plt.subplots()

ax.plot(x, np.sin(x) + x + np.random.randn(50))
ax.plot(x, np.sin(x) + 0.5 * x + np.random.randn(50))
ax.plot(x, np.sin(x) + 2 * x + np.random.randn(50))
ax.plot(x, np.sin(x) - 0.5 * x + np.random.randn(50))
ax.plot(x, np.sin(x) - 2 * x + np.random.randn(50))
ax.plot(x, np.sin(x) + np.random.randn(50))
ax.set_title("'fivethirtyeight' style sheet",color='r')

plt.show()

执行结果:
在这里插入图片描述

线条及填充

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False # 用来正常显示负号


import numpy as np

t = np.arange(-1, 2, .01)
s = np.sin(2 * np.pi * t)

#曲线
plt.plot(t, s)

# 以y轴0点画横线
plt.axhline(linewidth=8, color='#d62728')

# 画横线
plt.axhline(y=1)

# 画纵线
plt.axvline(x=1)

# Draw a thick blue vline at x=0 that spans the upper quadrant of the yrange
# plt.axvline(x=0, ymin=0.75, linewidth=8, color='#1f77b4')

# 画线段
plt.axhline(y=.5, xmin=0.25, xmax=0.75)

# 平行填充
plt.axhspan(0.25, 0.75, facecolor='0.5', alpha=0.5)

# 垂直填充
plt.axvspan(1.25, 1.55, facecolor='#2ca02c', alpha=0.5)

# 坐标轴
plt.axis([-1, 2, -1, 2])

plt.show()

执行结果:
在这里插入图片描述

交差及填充

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False # 用来正常显示负号


import numpy as np

x = np.arange(0.0, 2, 0.01)
y1 = np.sin(2*np.pi*x)
y2 = 1.2*np.sin(4*np.pi*x)

fig, ax = plt.subplots()
ax.plot(x, y1, x, y2, color='black')
ax.fill_between(x, y1, y2, where=y2>y1, facecolor='green')
ax.fill_between(x, y1, y2, where=y2<=y1, facecolor='red')
ax.set_title('fill between where')

plt.show()

执行结果:
在这里插入图片描述


本文链接: http://www.dtmao.cc/news_show_100299.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?