python 设置Pyplot的动态rc参数、绘图的填充

这篇具有很好参考价值的文章主要介绍了python 设置Pyplot的动态rc参数、绘图的填充。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1.全局参数定制

2.rc参数设置

例1.rc参数设置例1

 例2.rc参数设置例2

例3.用set_xticks设置刻度

例4.用set_xticklabels改变刻度

 3.绘图的填充

3.1调用函数fill_between()实现曲线下面部分的填充

3.2 部分区域填充

3.3 两条曲线之间的区域填充例7 使用fill_between()填充曲线之间的区域

 3.4 直接使用fill进行绘图的填充


Matplotlib配置了配色方案和默认设置,主要用来准备用于发布的图片。有两种方式可以设置参数,即全局参数定制和rc设置方法。

查看matplotlib的rc参数:

import matplotlib as plt
print(plt.ra_params)

1.全局参数定制

Matplotlib的全局参数可以通过编辑配置文件设置

import matplotlib as plt
print(plt.matplotlib_fname)
#显示当前用户的配置文件目录

查找到当前用户的配置文件目录,然后用编辑器打开,修改matplotlib文件,即可修改配置参数。

2.rc参数设置

使用Python编程修改rc参数,rc参数及其取值如下表1~3

表1 rc参数名称及其取值
rc参数 解释 取值
lines.linewidth 线条宽度 取0~10的数值,默认1.5
lines.linestyle 线条样式 取“-”“--”“-.”“:”4种,默认为“-”
lines.marker 线条上点的形状 可取“o”“D”等20种,默认为None
lines,markersize 点的大小 取0~10的数值,默认为1

 









 

表2 线条样式lines.linestyle的取值
linestyle取值 意义 linestyle取值 意义
- 实线 -. 点线
-- 长虚线 : 短虚线

表3 lines.marker参数的取值

marker取值 意义 marker取值 意义 'o' 圆圈 '.' 点 'D' 菱形 's' 正方形 'h' 六边形1 '*' 星号 'H' 六边形2 'd' 小菱形 '-' 水平线 'v' 一角朝下的三角形 '8' 八边形 '<' 一角朝左的三角形 'p' 五边形 '>' 一角朝右的三角形 ',' 像素 '^' 一角朝上的三角形 '+' 加号 '|' 竖线 'None' 无 'x'

X

 需要注意的是,由于默认的Pyplot字体并不支持中文符的显示,因此需要通过设置font.sans-serif参数改变绘图时的字体,使得图形可以正常显示中文。同时,由于更换字体后,会导致坐标轴中的部分字符无法显示,因此需要同时更改axes.unicode_minus参数。

plt.rcParams['font.family'] = ['SimHei']      #用来显示中文标签
plt.rcParams['axes.unicode_minus'] = False   #用来正常显示符号

如果需要在坐标轴上显示时间,可以利用DateFormatter提供的功能进行设置,常用代码如下:

from matplotlib.dates import DateFormatter
plt.gca().xaxis.set_major_formatter(DateFormatter('%y/%m/%d'))
#自动旋转X轴的刻度,适应坐标轴
plt.gcf().autofmt_xdate()

除了设置线条的字体的rc参数外,还有设置文本、箱线图、坐标轴、刻度、图例、标记、图片、图像保存等rc参数。

例1.rc参数设置例1

import numpy as np
import matplotlib.pyplot as plt
fig,ax = plt.subplots()
#配置中文显示
plt.rcParams['font.family'] = ['SimHei']      #用来显示中文标签
plt.rcParams['axes.unicode_minus'] = False   #用来正常显示符号
def f(t):
    return np.cos(2*np.pi*t)
x1 = np.arange(0.0,4.0,0.5)
x2 = np.arange(0.0,4.0,0.01)
plt.figure(1)
plt.subplot(2,2,1)
plt.plot(x1,f(x1),'bo',x2,f(x2),'k')
plt.title('子图1')
plt.subplot(2,2,2)
plt.plot(x2,f(x2),'r--')
plt.title('子图2')
plt.show()

OUT:

python 设置Pyplot的动态rc参数、绘图的填充

  例2.rc参数设置例2

fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.plot(np.random.randn(30).cumsum(),color = 'k',linestyle = 'dashed',marker = 'o',label = 'one')
ax.plot(np.random.randn(30).cumsum(),color = 'k',linestyle = 'dashed',marker = '+',label = 'two')
ax.plot(np.random.randn(30).cumsum(),color = 'k',linestyle = 'dashed',marker = 'v',label = 'three')
ax.legend(loc = 'best')

OUT:

python 设置Pyplot的动态rc参数、绘图的填充

可以用set_xticks设置X轴刻度

例3.用set_xticks设置刻度

fig = plt.figure()

ax = fig.add_subplot(1,1,1)

ax.plot(np.random.randn(30).cumsum(),color = 'k',linestyle = 'dashed',marker = 'o',label = 'one')
ax.plot(np.random.randn(30).cumsum(),color = 'k',linestyle = 'dashed',marker = '+',label = 'two')
ax.plot(np.random.randn(30).cumsum(),color = 'k',linestyle = 'dashed',marker = 'v',label = 'three')
ax.set_xticks([0,5,10,15,20,25,30,35])
ax.legend(loc = 'best')

OUT:

python 设置Pyplot的动态rc参数、绘图的填充

可以用set_xticklabels改变刻度,设置刻度的旋转角度及字体等。

例4.用set_xticklabels改变刻度

fig = plt.figure()

ax = fig.add_subplot(1,1,1)

ax.plot(np.random.randn(30).cumsum(),color = 'k',linestyle = 'dashed',marker = 'o',label = 'one')
ax.plot(np.random.randn(30).cumsum(),color = 'k',linestyle = 'dashed',marker = '+',label = 'two')
ax.plot(np.random.randn(30).cumsum(),color = 'k',linestyle = 'dashed',marker = 'v',label = 'three')
ax.set_xticklabels(['x1','x2','x3','x4','x5'],rotation = 30,fontsize = 'large')
ax.legend(loc = 'best')

OUT:

python 设置Pyplot的动态rc参数、绘图的填充

 其中,rotation参数表示X坐标标签的旋转角度;fontsize为字号,可以取值为“xx-small”“x-small”“small”“medium”“large”“x-large”“xx-large”“smaller”“None”。

 3.绘图的填充

3.1调用函数fill_between()实现曲线下面部分的填充  

x = np.linspace(0,1,500)
y = np.sin(3*np.pi*x)*np.exp(-4*x)
fig,ax = plt.subplots()
plt.plot(x,y)
plt.fill_between(x,0,y,facecolor = 'green',alpha = 0.3)

python 设置Pyplot的动态rc参数、绘图的填充

 其中,参数x表示整个X轴都覆盖;0表示覆盖的下限;y表示覆盖的上限时y这条曲线,facecolor表示覆盖区域的颜色;alpha表示覆盖区域的透明度[0,1],其值越大,表示越不透明

3.2 部分区域填充  

plt.fill_between(x[15:300],0,0.4,facecolor = 'green',alpha = 0.3)

python 设置Pyplot的动态rc参数、绘图的填充

3.3 两条曲线之间的区域填充

import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0,1,500)
y1 = np.sin(3*np.pi*x)*np.exp(-4*x)
y2 = y1 + 0.2
plt.plot(x,y1,'b')
plt.plot(x,y2,'r')
plt.fill_between(x,y1,y2,facecolor = 'green',alpha = 0.3)
plt.show()

 python 设置Pyplot的动态rc参数、绘图的填充

  3.4 直接使用fill进行绘图的填充

import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0,1,500)
y = np.sin(3*np.pi*x)*np.exp(-4*x)
fig,ax = plt.subplots()
ax.fill(x,y)
plt.show()

python 设置Pyplot的动态rc参数、绘图的填充

 文章来源地址https://www.toymoban.com/news/detail-407455.html

到了这里,关于python 设置Pyplot的动态rc参数、绘图的填充的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Jenkins 参数动态获取目录里面的内容

    Jenkins 参数动态获取目录里面的内容 假如我们想把一个目录下面的tar.gz文件作为jenkins参数,这个目录会实时更新,每次运行job的时候需要把目录里面的文件作为输入,这时候我们可以使用jenkins自带的Active Choices Parameter参数 在参数中写入一下代码

    2024年02月06日
    浏览(37)
  • Origin曲线填充绘图 填充范围线外的区域

    问题 :如果绘制一条曲线,给其设置上下两个阈值,填充阈值外的区域,如图: 错误 :Origin曲线填充只能识别两个对象,如果只选中曲线-填充,填充会特别混乱,无法填充自己想要的区域: 解决 :只能通过添加图层,将曲线绘制两遍,与两条虚线各分组成一个图层(2个图

    2023年04月12日
    浏览(43)
  • Matlab进阶绘图第16期—三维填充折线图

    三维填充折线图是在三维折线图的基础上,对其与XOY平面之间的部分进行颜色填充,从而 能够更好地刻画细节变化 。 由于Matlab中未收录三维填充折线图的绘制函数,因此需要大家自行设法解决 。 本文使用自制的FilledPlot3小工具进行三维填充折线图的绘制,先来看一下成品效

    2024年02月08日
    浏览(88)
  • Photoshop 2023 Beta内置Ai创意填充绘图!

    在数字化时代,图像处理软件已经成为了许多人不可或缺的工具。Adobe Photoshop一直是这个领域的领导者之一,其强大的功能和灵活的界面深受用户的喜爱。近日,Photoshop 2023 Beta爱国版正式发布,这个版本内置了最新的Ai创意填充绘图功能,极大地提高了用户的效率和创造力。

    2024年02月10日
    浏览(42)
  • Python如何随数据更新实时画图?Python实时动态绘图

    在数据分析和可视化场景中,我们常常需要实现实时动态图表,比如每分钟读取数据库新的记录,及时更新图表显示最新数据,而不是静态显示某个时间点的数据。本文将介绍使用Python matploblib库的animation功能实现实时动态绘图的方法。 问题背景 我们有一个Excel表,其中记录

    2024年02月12日
    浏览(50)
  • 【MATLAB基础绘图第2棒】绘制柱状/饼图填充图

    带填充纹理的堆叠图是通过在原始堆叠图的基础上添加不同的纹理得到的,可以很好地解决由于 颜色区分不够 而导致的对象识别困难问题。 由于Matlab中未收录提供填充纹理选项,因此需要大家自行设法解决。本博客介绍三种填充方法。 MATLAB官网-Hatchfill2(Kesh Ikuma. Matlab Ce

    2024年02月03日
    浏览(41)
  • python数学建模--绘图动态可视化图表

    本博客的灵感来源自笔者最近研究的最优化问题 在使用 模拟退火算法、遗传算法 求二元函数最值的过程中,虽然笔者已经能够通过算法得到不错的结果,但是笔者还是比较好奇算法的执行过程中,变量是怎样更新的,显然可视化是一种很好的方法 在上一篇博客【python数学建

    2024年02月06日
    浏览(40)
  • python学习之绘图后图例位置设置

    1、首先在绘图时,加入label标签 2、设置显示图例函数 loc表示位置,在函数定义中的值分别是: \\\'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

    2023年04月08日
    浏览(31)
  • 微信小程序 - 详细动态设置分享转发时的参数,实现点击按钮元素后 “手动触发“ 动态设置参数并调起转发分享给好友(列表上每一个分享按钮,单独设置分享转发参数,每次都是不同的分享参数)

    网上都是直接写死(默认不变)的分享参数,有时候需要动态赋值分享的标题、图片等,本文,这时候就不行了。 【如果需要 uniapp 微信小程序的教程,请访问:这篇文章】 本文 实现了在微信小程序项目开发中,动态设置分享的参数(并与右上角胶囊点击的分享共存,互不

    2024年02月14日
    浏览(70)
  • Python绘图制作混淆矩阵图--简易版(改矩阵参数就能运行)

     需要改的参数只有两个①你的类别数②混淆矩阵的数。运行结果如图所示。 当然,不喜欢蓝色也可以换颜色,如把代码中的Blues换成Reds等  是不是超级简单好用哈哈哈

    2024年02月12日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包