用python画一个柱状图可能用到的代码【完整版】

画柱状图

导入包

import torch as t
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import joblib
import matplotlib as mpl

设置默认字体格式为"Times New Roman"

font_name = 'Times New Roman'
mpl.rcParams['font.family'] = font_name

通过rcParams字典将’font.family’键设置为"Times New Roman"来将Matplotlib的默认字体设置为"Times New Roman"。请注意,为了使默认字体适用于所有文本元素,包括标题、标签和刻度标签,你需要在绘制图形之前进行全局设置。

绘图

numb= np.load('data.npy‘)  # 第一行为x,第二行为y。
y = np.log10(numb[1])
y[y == 0] = 0.1
x = numb[0]
plt.figure(figsize=(12, 4), dpi=300)
plt.bar(x, y, color=['green',],align='center', zorder=10) # x,y

使用figure()函数的figsize参数将图形的宽度设置为8英寸,高度设置为4英寸。通过调整figsize参数的值,可以改变图上刻度之间的距离大小。

设置各种参数并特征格式

plt.ylabel('Frequency (log10)', fontweight='bold')  #
plt.xlabel('CDR3 sequence length', fontweight='bold')  #
# plt.title('Bar Chart')  # 图表标题
plt.xticks(range(max(x)+1), range(max(x)+1))
plt.yticks(np.arange(0, max(y)+0.5, 0.5), np.arange(0, max(y)+0.5, 0.5))
plt.ylim([-0.2, 6.8])
plt.xlim([0, max(x)+1])

plt.grid(linestyle='--', zorder=1)
ax = plt.gca()
ax.axhline(0, color='black', linewidth=1.1)
ax.spines['bottom'].set_linewidth(1.4)  # x 轴下边框线宽度
ax.spines['left'].set_linewidth(1.4)    # y 轴左边框线宽度
ax.tick_params(axis='x', width=1.4)   # x 轴刻度线宽度
ax.tick_params(axis='y', width=1.4)   # y 轴刻度线宽

在这个例子中,我们使用xlabel()和ylabel()函数来设置X轴和Y轴的标签。首先创建了一个简单的折线图。然后,使用 plt.gca() 获取当前轴对象。通过 spines 字典对象,我们设置了 x 轴和 y 轴的线宽,其中 ‘bottom’ 对应 x 轴下边框,‘left’ 对应 y 轴左边框。我们还使用 tick_params() 方法设置了 x 轴和 y 轴的刻度线宽度.
在这个例子中,我们首先创建了一个简单的折线图。然后,使用 plt.gca() 获取当前轴对象,并使用 axhline() 函数在 y 轴上绘制一条水平线。axhline() 函数的第一个参数指定要绘制的水平线的位置,这里设为 0 表示绘制 y 轴上的 0 刻度线。color 参数指定线的颜色,这里设为 ‘black’ 表示黑色,linewidth 参数指定线的宽度,这里设为 2。这样就将 y 轴上的 0 刻度线加粗了。

保存图像

file_name = ‘B_chart’
file_format = ‘tif’ # 可以选择其他支持的格式,如:‘pdf’, ‘svg’, ‘jpg’, ‘jpeg’, ‘bmp’ 等
plt.savefig(f’./img/{file_name}.{file_format}', format=file_format)

绘图结果大致为

用python画一个柱状图可能用到的代码【完整版】_第1张图片

目录

  • 画柱状图
    • 导入包
    • 设置默认字体格式为"Times New Roman"
    • 绘图
    • 设置各种参数并特征格式
    • 保存图像
  • 绘图结果大致为

你可能感兴趣的:(机器学习,基础,python,开发语言)