Hướng dẫn how do i plot data in python with multiple columns? - làm cách nào để vẽ dữ liệu trong python với nhiều cột?

Được thử nghiệm trong

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)
1,
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)
2,
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)
3

Dữ liệu mẫu và nhập khẩu

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np

np.random.seed(2022)  # creates a consistent sample
y = np.random.rand(10,4)
y[:,0]= np.arange(10)
df = pd.DataFrame(y, columns=["X", "A", "B", "C"])

     X         A         B         C
0  0.0  0.499058  0.113384  0.049974
1  1.0  0.486988  0.897657  0.647452
2  2.0  0.721135  0.831353  0.827568
3  3.0  0.957044  0.368044  0.494838
4  4.0  0.619429  0.977530  0.096433
5  5.0  0.292499  0.298675  0.752473
6  6.0  0.523737  0.864436  0.388843
7  7.0  0.475181  0.564672  0.349429
8  8.0  0.037820  0.794270  0.357883
9  9.0  0.914509  0.372662  0.964883

Một số cột có thể được vẽ cùng một lúc bằng cách cung cấp danh sách các tên cột cho tham số

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)
4 trong
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)
5

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)

Điều này sẽ tạo ra một biểu đồ nơi các thanh được nhóm lại.

Hướng dẫn how do i plot data in python with multiple columns? - làm cách nào để vẽ dữ liệu trong python với nhiều cột?

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')

Điều này sẽ tạo ra một biểu đồ nơi các thanh được xếp chồng lên nhau.

Hướng dẫn how do i plot data in python with multiple columns? - làm cách nào để vẽ dữ liệu trong python với nhiều cột?


Để có chúng chồng chéo, bạn sẽ cần gọi

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)
6 nhiều lần và cung cấp các trục trả về đầu tiên cho tham số
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)
7 của các ô tiếp theo.

ax = df.plot(x="X", y="A", kind="bar", rot=0)
df.plot(x="X", y="B", kind="bar", ax=ax, color="C2", rot=0)
df.plot(x="X", y="C", kind="bar", ax=ax, color="C3", rot=0)

plt.show()

Điều này sẽ tạo ra một biểu đồ trong đó các thanh được xếp lớp, đây không phải là tiêu chuẩn hoặc thực hiện được khuyến nghị vì các giá trị lớn hơn được vẽ trong một nhóm sau sẽ bao gồm các giá trị nhỏ hơn, như có thể thấy tại

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)
8, trong đó
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)
9 bao gồm,
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')
0 và
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')
1. Dữ liệu được vẽ theo cách này có khả năng bị hiểu sai.
because larger values plotted in a later group will cover smaller values, as can be seen at
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)
8, where
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)
9 covers,
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')
0 and
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')
1. Data plotted in this way is likely to be misinterpreted.

Hướng dẫn how do i plot data in python with multiple columns? - làm cách nào để vẽ dữ liệu trong python với nhiều cột?

Biểu đồ này chỉ có ý nghĩa nếu các giá trị cao nhất là các giá trị từ cột đầu tiên được vẽ cho tất cả các thanh. Đây dường như là trường hợp trong đầu ra mong muốn từ câu hỏi. Nếu không, tôi sẽ không khuyên bạn nên sử dụng loại cốt truyện này và thay vào đó sử dụng một lô xếp chồng hoặc các thanh được nhóm từ giải pháp đầu tiên ở đây. Người ta có thể thử nghiệm tính minh bạch (

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')
2) và xem liệu giải pháp sau có mang lại kết quả hấp dẫn hay không.

Pandas ________ 23 & nbsp; hàm được sử dụng để vẽ nhiều cột từ DataFrame đã cho. Nếu chúng ta vẽ đồ thị thanh và đặt & nbsp; ____ ____ 24 & nbsp; tham số thành & nbsp; ________ 25 & nbsp; của hàm lô (), nó sẽ vẽ đồ thị thanh của nhiều cột. Chúng tôi có thể vẽ dữ liệu trực tiếp từ dữ liệu của bạn bằng cách sử dụng chức năng này. & NBSP;

Các chức năng & nbsp; ____ 23 & nbsp; hoạt động trên cả & NBSP; Trong bài viết này, tôi sẽ giải thích chức năng cú pháp của Plot () và cách chúng ta có thể vẽ nhiều cột của gấu trúc DataFrame.

1. Ví dụ nhanh về cốt truyện của gấu trúc DataFrame

Nếu bạn đang vội vàng dưới đây là một số ví dụ Python nhanh về cách vẽ các cột của gấu trúc DataFrame trong biểu đồ thanh bằng cách sử dụng

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')
9.


# Following are the quick examples

# Example 1: Create unstacked multiple columns bar
df.plot(kind="bar", figsize = (2, 4))

# Example 2: create multiple columns of stacked bar plot
df.plot(kind="bar", stacked = True)

# Example 3: Create customized multiple columns bar plot
df.plot(kind="bar", stacked = True)
plot.title("Death rate if corona virus")
plot.xlabel("Country")
plot.ylabel("Death Rate")

2. Cú pháp của Pandas Lô ()

Sau đây là cú pháp của

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')
3.


# Syntax of plot()
DataFrame.plot(x=None, y=None, **kwds)

2.1 Tham số của lô ()

  • ________ 31 & nbsp; (nhãn hoặc vị trí, tùy chọn) được sử dụng để cho phép vẽ sơ đồ dữ liệu phân loại so với các giá trị đo được. Nếu không được chỉ định, chỉ số của DataFrame được sử dụng.
  • ________ 32 & nbsp; (nhãn hoặc vị trí, tùy chọn) được sử dụng để cho phép vẽ sơ đồ dữ liệu phân loại so với các giá trị đo được. Nếu không được chỉ định, tất cả các cột số được sử dụng.
  • ________ 33 & nbsp; đối số từ khóa bổ sung.

2.2 Giá trị trả về

  • ax = df.plot(x="X", y="A", kind="bar", rot=0)
    df.plot(x="X", y="B", kind="bar", ax=ax, color="C2", rot=0)
    df.plot(x="X", y="C", kind="bar", ax=ax, color="C3", rot=0)
    
    plt.show()
    
    4 hoặc
    ax = df.plot(x="X", y="A", kind="bar", rot=0)
    df.plot(x="X", y="B", kind="bar", ax=ax, color="C2", rot=0)
    df.plot(x="X", y="C", kind="bar", ax=ax, color="C3", rot=0)
    
    plt.show()
    
    5.

3. Sử dụng biểu đồ thanh lô trong gấu trúc?

GANDAS & NBSP; DATAFRAME & NBSP; Lớp trong Python có một thành viên

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')
3 được sử dụng để vẽ các sơ đồ khác nhau để trực quan hóa bao gồm cả biểu đồ thanh. Gấu trúc cung cấp các biểu diễn khác nhau để hiển thị dữ liệu dưới dạng đồ thị. Một trong những sơ đồ quan trọng là một biểu đồ thanh được sử dụng nhanh chóng trong nhiều ứng dụng và bài thuyết trình.

Chúng tôi có thể tạo biểu đồ thanh nhanh chóng và dễ dàng với dữ liệu từ & nbsp; gấu trúc dữ liệu. Biểu đồ thanh là một trong những biểu đồ tốt nhất để khám phá dữ liệu nhanh và so sánh các giá trị thay đổi giữa các nhóm khác nhau. Mục đích chính của biểu đồ thanh hoặc sơ đồ thanh là để thu hút mắt người dùng bằng cách cung cấp một cái nhìn rõ ràng về khả năng so sánh độ dài của các đối tượng.

4. Vẽ đồ thị nhiều cột của gấu trúc DataFrame

Chúng ta có thể vẽ các cột của gấu trúc DataFrame bằng cách sử dụng hàm lô () ở đây tôi muốn biểu diễn nhiều cột của DataFrame dưới dạng trực quan hóa biểu đồ thanh. Đối với điều đó, chúng ta cần đặt tham số

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')
4 thành
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')
5 Pass vào hàm Plot (), nó sẽ trả về biểu đồ thanh của DataFrame.

Sử dụng các thanh xếp chồng lên nhau và không đóng gói, chúng tôi cũng có thể so sánh các cột của một khung dữ liệu nhất định và trình bày chúng trong biểu đồ thanh. Đối với điều đó, chúng ta cần tạo nhiều cột trong DataFrame. Hãy để tạo ra DataFrame với nhiều cột.


import pandas as pd
import matplotlib.pyplot as plot
# Create DataFrame
df = pd.DataFrame({"1st wave death rate":[316.3, 321.3, 117.2, 38.25, 302.2 ],
                   "2nd wave death rate":[200.1, 127.2, 60.1, 37.6, 230.1],
                   "3rd wave death rate":[20.1, 34.1, 12.1, 4.2, 24.3]}, 
                  index = ["USA", "Brazil", "Germany", "India", "Uk"])
print(df)

Năng suất dưới đầu ra.


         1st wave death rate  2nd wave death rate  3rd wave death rate
USA                   316.30                200.1                 20.1
Brazil                321.30                127.2                 34.1
Germany               117.20                 60.1                 12.1
India                  38.25                 37.6                  4.2
Uk                    302.20        

5. Không đóng gói nhiều cột của các lô thanh

Python Pandas Biểu đồ thanh xếp chồng lên nhau. Nếu bạn chọn nhiều hơn một cột, theo mặc định, hãy tạo biểu đồ thanh chưa đóng gói với mỗi cột tạo thành một thanh và chỉ mục DataFrame dưới dạng trục X.

Sử dụng các sơ đồ thanh chưa được đóng gói để so sánh một danh mục cụ thể với các mẫu khác nhau. Như chúng ta có thể thấy từ bên dưới, nó cho thấy tỷ lệ tử vong của coronavirus trên ba sóng. Ở đây tôi đã chuyển tham số

ax = df.plot(x="X", y="A", kind="bar", rot=0)
df.plot(x="X", y="B", kind="bar", ax=ax, color="C2", rot=0)
df.plot(x="X", y="C", kind="bar", ax=ax, color="C3", rot=0)

plt.show()
9 vào hàm này cùng với param
ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')
4, nó sẽ trả về kích thước tùy chỉnh của thanh lô.


# Create unstacked multiple columns bar
df.plot(kind="bar", figsize = (2, 4))

Năng suất dưới đầu ra.

Hướng dẫn how do i plot data in python with multiple columns? - làm cách nào để vẽ dữ liệu trong python với nhiều cột?
UndackedPandas Plot Bar Pandas plot bar

6. Được xếp chồng lên nhiều cột của các lô thanh

Biểu đồ thanh xếp chồng lên tổng số lượng của mỗi nhóm. Sử dụng các ô thanh xếp chồng lên nhau, chúng tôi có thể so sánh từng cá nhân. Vì, chúng ta cần đặt từ khóa


# Following are the quick examples

# Example 1: Create unstacked multiple columns bar
df.plot(kind="bar", figsize = (2, 4))

# Example 2: create multiple columns of stacked bar plot
df.plot(kind="bar", stacked = True)

# Example 3: Create customized multiple columns bar plot
df.plot(kind="bar", stacked = True)
plot.title("Death rate if corona virus")
plot.xlabel("Country")
plot.ylabel("Death Rate")
1 với giá trị

# Following are the quick examples

# Example 1: Create unstacked multiple columns bar
df.plot(kind="bar", figsize = (2, 4))

# Example 2: create multiple columns of stacked bar plot
df.plot(kind="bar", stacked = True)

# Example 3: Create customized multiple columns bar plot
df.plot(kind="bar", stacked = True)
plot.title("Death rate if corona virus")
plot.xlabel("Country")
plot.ylabel("Death Rate")
2. Các lô thanh xếp chồng có mỗi lô xếp chồng lên nhau.


# create multiple columns of stacked bar plot
df.plot(kind="bar", stacked = True)

Năng suất dưới đầu ra.

Hướng dẫn how do i plot data in python with multiple columns? - làm cách nào để vẽ dữ liệu trong python với nhiều cột?
StackedPandas Plot Bar Pandas plot bar

7. Tùy chỉnh nhiều cột của biểu đồ thanh

Chúng ta có thể tùy chỉnh biểu đồ thanh bằng cách cung cấp bất kỳ đối số từ khóa nào cho chức năng này.Ở đây, tôi đã tùy chỉnh nó bằng cách cung cấp tiêu đề của thanh cốt truyện và nhãn trục với sự trợ giúp của matplotlib.Hãy để tùy chỉnh biểu đồ thanh.

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0)
0

Năng suất dưới đầu ra.

Hướng dẫn how do i plot data in python with multiple columns? - làm cách nào để vẽ dữ liệu trong python với nhiều cột?
Gấu trúc lô đất

8. Kết luận

Trong bài viết này, tôi đã giải thích Pandas

ax = df.plot(x="X", y=["A", "B", "C"], kind="bar", rot=0, stacked=True)
_ = ax.legend(bbox_to_anchor=(1, 1.02), loc='upper left')
9 được sử dụng để tạo các lô xếp chồng lên nhau và không được đóng gói khi bạn có nhiều cột trên DataFrame.

Học hỏi hạnh phúc !!

Những bài viết liên quan

  • Thay đổi kích thước cốt truyện gấu trúc
  • Cách tạo cốt truyện phân tán trong gấu trúc
  • In Pretty Pandas DataFrame hoặc Sê -ri
  • Cách tạo cốt truyện chuỗi thời gian trong gấu trúc
  • Cách vẽ biểu đồ BoxPlot từ DataFrame
  • Sum Pandas DataFrame Cột với các ví dụ
  • Tạo Gấu dữ liệu Pandas với các ví dụ làm việc
  • Chọn các hàng DataFrame Pandas giữa hai ngày
  • Pandas chuyển đổi cột chuỗi thành DateTime

Người giới thiệu

  • https://pd.pydata.org/docs/reference/api/pd.DataFrame.plot.bar.html