Chức năng nào sẽ tạo biểu đồ thanh dọc trong python?

Biểu đồ thanh, Biểu đồ hoặc Biểu đồ trong thư viện matplotlib là biểu đồ biểu thị dữ liệu phân loại ở định dạng hình chữ nhật. Bằng cách xem các thanh đó, người ta có thể biết sản phẩm nào đang hoạt động tốt hay xấu. Nó có nghĩa là thanh càng dài, sản phẩm càng hoạt động tốt. Bạn có thể tạo biểu đồ thanh ngang và dọc trong Python bằng thư viện matplotlib này và pyplot

Python pyplot matplotlib có chức năng bar, giúp chúng ta tạo biểu đồ hoặc đồ thị này từ các giá trị X, chiều cao và chiều rộng đã cho. Cú pháp cơ bản của biểu đồ thanh như hình bên dưới

bar(x, height, width=0.8, bottom=None, *, align='center', data=None, **kwargs)

Ngoài những đối số này, còn có một vài đối số tùy chọn khác để xác định màu sắc, tiêu đề, độ rộng của dòng, v.v. Ở đây, chúng tôi đề cập đến hầu hết các đối số biểu đồ thanh này với một ví dụ về từng đối số. Trước khi đi vào ví dụ, chúng ta hãy xem dữ liệu tệp Excel mà chúng tôi sử dụng cho việc này

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')
print(df)

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()

print(sales_groupedby_region.sort_values(by = ['Sales']))
Excel Data

Tạo biểu đồ thanh matplotlib cơ bản trong Python

Trong ví dụ này, chúng tôi tạo biểu đồ thanh cơ bản bằng cách sử dụng pyplot từ thư viện. Đầu tiên, chúng tôi đã khai báo hai danh sách chiều rộng và chiều cao. Tiếp theo, chúng tôi đã sử dụng hàm bar có sẵn trong pyplot để vẽ cái này

import matplotlib.pyplot as plt

x = ['A', 'B', 'C', 'D', 'E']
y = [22, 9, 40, 27, 55]

plt.bar(x, y)

plt.show()
Simple Example 2

tên biểu đồ thanh

Biểu đồ thanh có các hàm xlabel, ylabel và title, rất hữu ích để cung cấp tên cho trục X, trục Y và tên biểu đồ

  • xnhãn. Gán tên riêng của bạn cho trục X. Hàm này chấp nhận một chuỗi, được gán cho tên trục X
  • ylabel. Sử dụng chức năng này để gán tên cho trục Y
  • Tiêu đề. Hãy ghi rõ tên biểu đồ
import matplotlib.pyplot as plt

x = ['A', 'B', 'C', 'D', 'E']
y = [22, 9, 40, 27, 55]

plt.bar(x, y)

plt.title('Simple Example')
plt.xlabel('Width Names')
plt.ylabel('Height Values')

plt.show()
Add Title, X and Y axis Names

LƯU Ý. Sử dụng matplotlib nhập này. pyplot as plt làm dòng đầu tiên cho tất cả các ví dụ bên dưới.

đường lưới biểu đồ thanh

Nếu bạn muốn hiển thị các đường lưới trong biểu đồ thanh của mình, hãy sử dụng hàm grid() có sẵn

x = ['A', 'B', 'C', 'D', 'E']
y = [22, 9, 40, 27, 55]

plt.bar(x, y)

plt.title('Simple Example')
plt.xlabel('Width Names')
plt.ylabel('Height Values')

plt.grid(color = 'red', alpha = 0.3, linestyle = '--', linewidth = 2)
plt.show()
Add Grid Lines

Biểu đồ thanh Python matplotlib từ tệp CSV

Trong ví dụ này, chúng tôi sử dụng dữ liệu của tệp CSV trong thư mục cục bộ của chúng tôi. Như bạn có thể thấy từ mã Python bên dưới, trước tiên, chúng tôi đang sử dụng hàm pandas Dataframe groupby để nhóm các mục Khu vực. Và tiếp theo, chúng tôi tìm Tổng của Số tiền bán hàng.

Tiếp theo, chúng tôi vẽ tên Khu vực dựa trên giá trị Tổng doanh số. Điều đó có nghĩa là biểu đồ thanh matplotlib bên dưới sẽ hiển thị Doanh số bán hàng của tất cả các khu vực

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')
print(df)

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()
print(sales_groupedby_region.sort_values(by = ['Sales']))

fig, ax = plt.subplots()

ax.bar(sales_groupedby_region.index, sales_groupedby_region['Sales'])

plt.title('Sales by Region')
plt.xlabel('Region Names')
plt.ylabel('Sales Amount')

plt.show()
Python matplotlib Bar Chart from CSV File 5

Ảnh chụp màn hình biểu đồ thanh ở trên cho thấy các giá trị trục x được hợp nhất nên chúng tôi không thể xác định chúng. Để tôi xoay chúng 45 độ.

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()

fig, ax = plt.subplots()

ax.bar(sales_groupedby_region.index, sales_groupedby_region['Sales'])

labels = ax.get_xticklabels()
plt.setp(labels, rotation = 45, horizontalalignment = 'right')

plt.title('Sales by')
plt.xlabel('Region Names')
plt.ylabel('Sales Amount')

plt.show()
Rotate to 45 Degrees

Giới hạn giá trị trục Y của biểu đồ thanh

Có một phương thức ylim trong hàm thanh pyplot sẽ giới hạn hoặc thay đổi các giá trị trục y. Ở đây, chúng tôi đã thay đổi giá trị bắt đầu từ 0 thành 50000 và giá trị kết thúc từ 2500000 thành 3000000

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')

sales_data = df.groupby('Region')[['Sales']].sum()

fig, ax = plt.subplots()

ax.bar(sales_data.index, sales_data['Sales'])

labels = ax.get_xticklabels()
plt.setp(labels, rotation = 45, horizontalalignment = 'right')

plt.title('Sales by Region')
plt.xlabel('Region Names')
plt.ylabel('Sales Amount')
plt.ylim(50000, 3000000)
plt.show()
Limit Y-axis values using ylim

Tương tự, bạn có thể giới hạn các giá trị trục của trục X bằng phương pháp xlim. Để sử dụng tương tự, hãy thử plt. xlim(0, 10) hoặc đại loại như thế.

Biểu đồ thanh ngang

Thư viện này cung cấp hàm barh để vẽ hoặc vẽ biểu đồ thanh ngang. Trong ví dụ này, chúng tôi đã thay thế hàm thực tế bằng hàm barh để vẽ biểu đồ thanh ngang. Tiếp theo, chúng tôi đã thay đổi xlabel và ylabel để thay đổi tên trục

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')

sales_data = df.groupby('Region')[['Sales']].sum()

fig, ax = plt.subplots()

ax.barh(sales_data.index, sales_data['Sales'])

plt.title('Horizontal Sales')
plt.xlabel('Sales Amount')
plt.ylabel('Region Names')

plt.show()
Python matplotlib Horizontal Bar Chart

Màu biểu đồ thanh

Sử dụng đối số color để thay đổi màu của hình chữ nhật và đối số edgecolor để thay đổi màu của các cạnh. Ở đây, chúng tôi đã sử dụng danh sách 6 màu. Nghĩa là nếu có 6 màu mặc định sẽ thay thế các màu này. Nếu có nhiều hơn 6 thì các màu này sẽ lặp lại cho các màu khác. Tiếp theo, chúng tôi đã sử dụng đối số edgecolor để thay đổi màu đường viền của biểu đồ thanh thành màu xanh lá cây

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')

sales_data = df.groupby('Region')[['Sales']].sum()

colors = ['red', 'green', 'blue', 'yellow', 'black', 'cyan']

fig, ax = plt.subplots()

ax.bar(sales_data.index, sales_data['Sales'],
    color = colors, edgecolor = 'green')

labels = ax.get_xticklabels()
plt.setp(labels, rotation = 45, horizontalalignment = 'right')

plt.show()
Change Colors of a Rectangles

Ở đây, chúng tôi đã sử dụng tên màu làm mục danh sách. Tuy nhiên, bạn có thể sử dụng mã màu hex. Ví dụ:

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')
print(df)

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()

print(sales_groupedby_region.sort_values(by = ['Sales']))
0

Định dạng nhãn trục của biểu đồ thanh

Trong ví dụ này, chúng tôi đang thay đổi màu của bảng trục y thành màu xanh lam và bảng trục x thành màu cam đã xoay chúng sang 45 độ. Tiếp theo, chúng tôi đã thêm các nhãn trục và định dạng màu phông chữ, cỡ chữ và độ dày phông chữ thành đậm

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')
print(df)

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()

print(sales_groupedby_region.sort_values(by = ['Sales']))
1Format Axis Labels 7

Nếu bạn không thể nhìn thấy nhãn trục X và trục Y thì bạn có thể điều chỉnh vị trí của phần trên cùng, bên trái, bên phải và phần dưới cùng của các ô con. Đối với điều này, bạn phải sử dụng chức năng subplots_adjust.

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')
print(df)

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()

print(sales_groupedby_region.sort_values(by = ['Sales']))
2Adjust the Position, X and Y-Axis 8

Kiểm soát Độ rộng và vị trí của Biểu đồ

Sử dụng đối số y_pos để kiểm soát vị trí của từng hình chữ nhật trong biểu đồ. Và đối số chiều rộng pyplot giúp bạn kiểm soát chiều rộng của chúng

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')
print(df)

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()

print(sales_groupedby_region.sort_values(by = ['Sales']))
3Control Width and Position 12

Hoặc bạn có thể sử dụng danh sách các giá trị để xác định chiều rộng của từng hình chữ nhật và sử dụng y_pos để thay đổi vị trí các dấu kiểm của trục. Nếu bạn quên sử dụng y_pos, thì các hình chữ nhật sẽ chồng lên nhau.

Tạo kiểu Python biểu đồ thanh matplotlib

Sử dụng đoạn mã dưới đây để tìm danh sách các kiểu có sẵn trong pyplot

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')
print(df)

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()

print(sales_groupedby_region.sort_values(by = ['Sales']))
4Available Styles

Ở đây, chúng tôi đang sử dụng tableau-colorblind10.

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')
print(df)

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()

print(sales_groupedby_region.sort_values(by = ['Sales']))
5using Tableau Colorblind style 14

Ngày nay, hình ảnh mô-đun seaborn đã trở nên rất phổ biến trong thế giới Khoa học dữ liệu. Vì vậy, chúng tôi sử dụng tương tự trong ví dụ này.

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')
print(df)

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()

print(sales_groupedby_region.sort_values(by = ['Sales']))
6Python Seaborn matplotlib Bar Chart 15

Thay đổi kết cấu biểu đồ thanh

Biểu đồ thanh có một đối số được gọi là hatch để thay đổi kết cấu. Thay vì lấp đầy không gian trống, bạn có thể lấp đầy chúng bằng các mẫu hoặc hình dạng khác nhau. Ví dụ: chúng tôi sẽ điền vào tất cả các hình trụ bằng ký hiệu *

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')
print(df)

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()

print(sales_groupedby_region.sort_values(by = ['Sales']))
7Change Texture 16

Lần này, chúng tôi đang sử dụng một mẫu khác cho mỗi hình chữ nhật trong biểu đồ thanh.

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')
print(df)

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()

print(sales_groupedby_region.sort_values(by = ['Sales']))
8Style Rectangles in a Python matplotlib Bar Chart 17

Viết hai Biểu đồ thanh matplotlib bằng Python

Nó cho phép bạn vẽ hai biểu đồ thanh cạnh nhau để so sánh doanh số bán hàng của năm nay với. năm ngoái hoặc bất kỳ so sánh thống kê nào khác. Ở đây, chúng tôi đang so sánh Bán hàng khôn ngoan theo khu vực so với. lợi nhuận. Nó có thể không phải là một sự so sánh tốt, nhưng bạn có ý tưởng về cách chúng ta có thể đạt được điều tương tự

import pandas as pd
from matplotlib import pyplot as plt

df = pd.read_excel('/Users/suresh/Downloads/Global_Superstore.xls')
print(df)

sales_groupedby_region = df.groupby('Region')[['Sales']].sum()

print(sales_groupedby_region.sort_values(by = ['Sales']))
9Multiple or Two 18

Tương tự, bạn có thể vẽ thêm một biểu đồ để so sánh ba biểu đồ thanh.

Sử dụng chức năng chú giải pyplot của Python để hiển thị chú giải của biểu đồ Thanh. Có nhiều cách để gán giá trị chú thích. Trong ví dụ trên, chúng tôi đã chỉ ra một cách hiển thị các mục chú thích. Và cách thay thế là thay thế plt. huyền thoại () với plt. legend([r1, r2], [‘Sales’, ‘Profit’]) và xóa các đối số nhãn khỏi r1 và r2

Biểu đồ thanh xếp chồng lên nhau

Bạn cũng có thể xếp chồng một cột dữ liệu lên trên một cột dữ liệu khác và điều này được gọi là biểu đồ thanh xếp chồng. Trong ví dụ này, chúng tôi xếp Doanh số lên trên lợi nhuận

import matplotlib.pyplot as plt

x = ['A', 'B', 'C', 'D', 'E']
y = [22, 9, 40, 27, 55]

plt.bar(x, y)

plt.show()
0Python matplotlib Stacked Bar Chart 19

Bạn có thể thay đổi vị trí của các cột xếp chồng lên nhau bằng đối số dưới cùng. Chẳng hạn, bạn có thể đặt doanh số ở dưới cùng và lợi nhuận ở trên cùng bằng cách thay thế ô thứ hai bằng mã bên dưới.

import matplotlib.pyplot as plt

x = ['A', 'B', 'C', 'D', 'E']
y = [22, 9, 40, 27, 55]

plt.bar(x, y)

plt.show()
1

Ô con biểu đồ thanh

Trong matplotlib Python, bạn cũng có thể tạo các ô con của biểu đồ thanh. Trong ví dụ này, chúng tôi đang tạo hai biểu đồ riêng biệt cho Bán hàng và Lợi nhuận cho tất cả các vùng trong tập dữ liệu của chúng tôi.

import matplotlib.pyplot as plt

x = ['A', 'B', 'C', 'D', 'E']
y = [22, 9, 40, 27, 55]

plt.bar(x, y)

plt.show()
2Subplots 20

Thêm nhãn Dữ liệu vào Biểu đồ thanh

Trong ví dụ này, chúng tôi sẽ chỉ cho bạn cách thêm nhãn dữ liệu lên trên mỗi hình chữ nhật. Đối với điều này, hãy sử dụng chức năng văn bản trong pyplot

import matplotlib.pyplot as plt

x = ['A', 'B', 'C', 'D', 'E']
y = [22, 9, 40, 27, 55]

plt.bar(x, y)

plt.show()
3Add Data Labels to Python matplotlib Bar Chart 21

Như bạn có thể thấy, các nhãn dữ liệu đã xoay 90 độ và có màu đỏ. Đó là bởi vì chúng tôi đã xác định xoay = 90, màu = 'đỏ' và bạn có thể thay đổi chúng theo yêu cầu của mình.

Dòng lỗi biểu đồ thanh

Bằng cách sử dụng đối số yerr của các hàm thanh pyplot, bạn có thể vẽ các đường lỗi hoặc đường tự tin trên đầu biểu đồ

Hàm nào sẽ tạo biểu đồ thanh dọc?

Đây là câu trả lời đã được xác minh của chuyên gia. Câu trả lời là barplot() . Giải trình. Trong R, hàm barplot() được sử dụng để tạo biểu đồ thanh. Chúng ta có thể tạo cả thanh ngang và thanh dọc.

Hàm nào được sử dụng để vẽ biểu đồ thanh trong Python?

bar() cho phép bạn chỉ định giá trị bắt đầu cho một thanh. Thay vì chạy từ 0 đến một giá trị, nó sẽ đi từ dưới lên giá trị. Cuộc gọi đầu tiên đến pyplot. bar() vẽ các thanh màu xanh.

Biểu đồ thanh dọc là gì?

Biểu đồ thanh dọc hiển thị dữ liệu trong một loạt các thanh chạy từ dưới lên trên cùng của biểu đồ . Biểu đồ thanh dọc sử dụng trục x để ghi nhãn danh mục, trong khi dữ liệu số được đo dọc theo trục y. Loại biểu đồ này hữu ích nếu một trục không có dữ liệu số.