matplotlib.pyplot:柱状图或条形图 bar

import matplotlib.pyplot as plt;

plt.bar(   x,       # 元组或列表,数据的x坐标序列
        height,     # 元组或列表,数据序列
        width,      # 数值或列表,条形宽度,默认0.8
        bottom,     # 数值或列表,y轴的基准值,默认0
        align,      # 字符串,两种值可供选择{'center','edge'}
        color,      # 元组或列表,条形颜色
        edgecolor,  # 元组或列表,条边颜色
        linewidth,  # 元组或列表,可选条形边缘宽度,如为0则无边
        tick_label, # 元组或列表或字符串,条形数据的标签
        xerr,yerr,  # 元组或列表或数值,误差线
        ecolor,     # 元组或列表,误差线颜色,默认为黑色
        capsize,    # 误差线长度
        error_kw,   # 字典,错误条
        log,        # 布尔,是否以log对象做刻度,默认为假
        orientation # 字符串,两种值供选择{'vertical'垂直,'horizontal'水平}
        )

示例1:普通柱状图

import matplotlib.pyplot as plt;


x = [0.7,0.3];
y = [60,40];
color = ['blue','red'];
lable = ['man','woman'];

def th1():
    plt.bar(x,y,width=0.2,
            color=color,align='center',
            tick_label=lable);
    plt.xlim(0,1);
    plt.ylim(0,100);
    plt.show();

th1();

 

示例2:并列式

import matplotlib.pyplot as plt;
import numpy as np;

def axis(xi,xm,yi,ym): # 设置坐标轴范围
    plt.xlim(xi,xm);
    plt.ylim(yi,ym);

def th2():
    num1=np.array([10,15,16,28]);
    num2=np.array([10,12,18,26]);
    width=0.3;
    x = np.array([x for x in range(1,5)]); # 第一个数据序列x轴
    x1 = x-width; # 为使其并列,使得第一个x轴序列全部减去条宽度

    plt.bar(x1,num1,width=width,color='blue',label='first');
    plt.bar(x,num2,width=width,color='green',label='second');
    plt.legend(loc='upper left'); # 设置标签显示在左上角
    axis(0,5,0,30);
    plt.show();

th2();

示例3:堆叠式

def th3():
    num1=np.array([10,15,16,28]);
    num2=num1+np.array([10,12,18,26]);
    ymax = max(num2);
    width=0.3;
    x = np.array([x for x in range(1,5)]);
    plt.bar(x,num2,width=width,color='green',label='second',align='center'); 
    # 避免下面的数据颜色被掩盖,需要先画第二个数据条
    plt.bar(x,num1,width=width,color='blue',label='first',align='center');
    plt.legend(loc='upper left');
    axis(0,5,0,ymax+5);
    plt.show();

th3();

函数matplotlib.pyplot.bar()是用来绘制垂直条形图的。它的函数签名为matplotlib.pyplot.bar(x, height, width=0.8, bottom=None, *, align='center', data=None, **kwargs)。在这个函数中,x表示条形图的位置,height表示每个条形图的高度,width表示条形图的宽度,默认为0.8。bottom表示条形图的基线位置,align表示条形图的对齐方式(默认为'center')。data参数可以传入一个DataFrame一个类似数组的数据对象。其他的参数可以用来设置条形图的颜色、边框颜色、线宽等。如果你想绘制简单的水平条形图,你可以使用面向对象编程的方式,例如:import matplotlib.pyplot as plt import numpy as np plt.figure(figsize=(5,5)) ax=plt.axes() x=np.arange(0,6) y=np.random.random(6) ax.barh(x,y) plt.show()<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [matplotlibpyplot模块之柱状图bar():基础参数、外观参数)](https://blog.csdn.net/mighty13/article/details/113869911)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* [matplotlib.pyplot.bar()与barh()绘制条形图](https://blog.csdn.net/Yangyuqing_/article/details/124180245)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值