首页 > 编程语言 >Matplotlib配置和样式表操作——Python实现

Matplotlib配置和样式表操作——Python实现

时间:2024-10-30 16:48:55浏览次数:6  
标签:plt Python random Matplotlib default np 样式表 IPython ax

今天在使用Python进行Matplotlib配置和样式表操作时候,发生如下报错:

NameError: name 'IPython_default' is not defined

源代码如下:

import numpy as np
from matplotlib import pyplot as plt
plt.style.available[:5]
def hist_and_lines():
    np.random.seed(0)
    fig, ax = plt.subplots(1, 2, figsize=(11, 4))
    ax[0].hist(np.random.randn(1000))
    for i in range(3):
        ax[1].plot(np.random.rand(10))
    ax[1].legend(['a', 'b', 'c'], loc='lower left')
# Update rcParams with IPython_default
plt.rcParams.update(IPython_default)

这时候需要在plt.rcParams.update(IPython_default)前定义IPython_default,

修改一:

# Define IPython_default with some default settings
IPython_default = {
    'figure.figsize': (10, 6),
    'axes.titlesize': 'large',
    'axes.labelsize': 'medium',
    'xtick.labelsize': 'small',
    'ytick.labelsize': 'small',
    'legend.fontsize': 'small',
    'font.family': 'serif'
}

或者作出如下定义:

修改二:


IPython_default = plt.rcParams.copy()

修改代码如下:

import numpy as np
from matplotlib import pyplot as plt
plt.style.available[:5]
#%%
def hist_and_lines():
    np.random.seed(0)
    fig, ax = plt.subplots(1, 2, figsize=(11, 4))
    ax[0].hist(np.random.randn(1000))
    for i in range(3):
        ax[1].plot(np.random.rand(10))
    ax[1].legend(['a', 'b', 'c'], loc='lower left')
#%%
# Define IPython_default with some default settings
IPython_default = {
    'figure.figsize': (10, 6),
    'axes.titlesize': 'large',
    'axes.labelsize': 'medium',
    'xtick.labelsize': 'small',
    'ytick.labelsize': 'small',
    'legend.fontsize': 'small',
    'font.family': 'serif'
}

# Update rcParams with IPython_default
plt.rcParams.update(IPython_default)
#%%
# Now we can create a plot and see that the styles are changed
hist_and_lines()

成功解决并输出结果:

标签:plt,Python,random,Matplotlib,default,np,样式表,IPython,ax
From: https://blog.csdn.net/2301_76574743/article/details/143368016

相关文章

  • 【2024华为OD-E卷-200分-任务最优调度】(题目+思路+Java&C++&Python解析+在线测试)
    在线评测链接题目内容给定一个正整数数组表示待系统执行的任务列表,数组的每一个元素代表一个任务,元素的值表示该任务的类型。请计算执行完所有任务所需的最短时间。任务执行规则如下:任务可以按任意顺序执行,且每个任务执行耗时间均为111个时间单位两个同类型的......
  • 爬虫 python
    服务端渲染客户端渲染urllib.request.urlopen(url)还是requests.get(url)取决于具体的需求和上下文。        以下是两者的对比以及如何选择适合自己的工具:功能对比:易用性和API设计:requests:API设计更加人性化,提供了丰富的高级功能,如会话管理、自动重定向......
  • 说它是谁就是谁—Python语言中的鸭子类型
    鸭子类型(DuckTyping)是动态类型语言中的一种类型推断风格,尤其在Python语言中得到了广泛的应用。它的核心思想是:“如果它走起路来像鸭子,叫起来像鸭子,那么它就是鸭子”。这句话的意思是,我们不关心对象的类型是什么,而只关心对象的行为。只要对象具有所需的方法和属性,它就可以被视......
  • Python元类揭秘:掌控类的创造艺术
    元类(metaclass),作为类的构造者,不仅决定类的行为,还塑造其结构,开启了一扇通往高级元编程的大门。本文旨在全面解析Python元类的奥秘:从概念解析,到需求分析,再到定义与实践,最后,通过具体实例展现元类在现实世界应用中的魅力。一、元类:描述类的类在Python中,一切皆对象。类,作为对象......
  • Python工具箱系列(五十五)
    ​​文字识别文字识别是热门研究方向。目前相对成熟的有:•Google的tesseract项目,它能识别100多种语言•基于机器学习的多个项目,例如百度的paddlehubtesseract使用比较简单,但是配置相对复杂一下。在Ubuntubionic的安装过程如下。aptinstall-ytesseract-ocrtesseract-v#......
  • Python工具箱系列(五十六)
    抠图抠图是基本需求,最常见的应用场景就是证件照,每次去拍照,都要用个纯色的幕布,而且要求衣服不能太浅。其实背后是有原因的:为了管理部门更准确识别出人像。许多科幻电影也是要求演员在绿幕前表演,后期抠图合成逼真的电影。抠图工具非常多,例如PhotoShop就是抠图利器,可以很神奇地把图......
  • Python工具箱系列(五十七)
    图像分割与人脸识别众所周知图像是由若干有意义的像素组成的,图像分割作为计算机视觉的基础,对具有现有目标和较精确边界的图像进行分割,实现在图像像素级别上的分类任务。图像分割可分为语义分割和实例分割两类,区别如下:语义分割:将图像中每个像素赋予一个类别标签,用不同的颜色来表......
  • python调用grpc请求
    gRPC是一款高性能、开源的RPC框架,支持多种编程语言。Protobuf是gRPC使用的默认序化协议,可以将结构化数据序列化为二进制格式,提高数据传输效率。在Python中使用gRPC调用服务时,通常需要先定义协议缓冲区(ProtocolBuffers)消息类型,这些类型是从.proto文件生成的。当你准备调用一个gRP......
  • 【EI复现】基于深度强化学习的微能源网能量管理与优化策略研究(Python代码实现)
    ......
  • 【EI复现】基于深度强化学习的微能源网能量管理与优化策略研究(Python代码实现)
    ......