Điều kiện tiên quyết: matplotlibMatplotlib
Trong bài viết này, chúng tôi sẽ thêm nhãn giá trị trên biểu đồ thanh matplotlib. Biểu đồ thanh là màn hình đồ họa của dữ liệu sử dụng các thanh có độ cao khác nhau. & nbsp; chúng ta có thể so sánh dữ liệu khác nhau bằng cách sử dụng biểu đồ thanh này. Để vẽ sơ đồ dữ liệu trong python, chúng tôi sử dụng hàm thanh [] được cung cấp bởi thư viện matplotlib trong này, chúng tôi có thể truyền dữ liệu của mình dưới dạng tham số để trực quan hóa, nhưng biểu đồ mặc định được vẽ trên dữ liệu đã cho không chứa bất kỳ nhãn giá trị nào trên mỗi thanh của Biểu đồ thanh, vì biểu đồ thanh mặc định không chứa bất kỳ nhãn giá trị nào của mỗi thanh của biểu đồ thanh, rất khó để phân tích giá trị chính xác được biểu thị bằng các thanh riêng lẻ của biểu đồ thanh.
Để vẽ sơ đồ biểu đồ thanh với nhãn giá trị, chúng tôi đang sử dụng chủ yếu hai phương thức được cung cấp bởi thư viện Matplotlib.
- Để tạo biểu đồ thanh
Syntax: plt.bar[x, height, color]
- Để thêm văn bản trên biểu đồ thanh
Syntax: plt.text[x, y, s, ha, Bbox]
Chúng tôi đang hiển thị một số tham số được sử dụng trong bài viết này:
Tham số | Sự mô tả |
x | Giá trị dữ liệu sơ đồ trên trục x của lô. |
chiều cao & nbsp; | Giá trị dữ liệu biểu thị trên trục y của cốt truyện. |
màu sắc | Đặt màu của cốt truyện. |
X, Y & NBSP; | tọa độ của cốt truyện. |
S | Chuỗi sẽ được hiển thị. |
ha | Liên kết ngang. |
BBOX | Đặt hộp hình chữ nhật xung quanh văn bản. |
Các bước cần thiết:
- Nhập thư viện.
- Tạo hàm có thể thêm các nhãn giá trị bằng cách lấy X và Y làm tham số, bây giờ trong hàm, chúng ta sẽ chạy vòng lặp cho độ dài của giá trị x Chúng ta có thể tìm thấy độ dài bằng cách sử dụng hàm Len [] và Trong biến vượt qua mà chúng tôi muốn.
- Bây giờ sử dụng hàm plt.text [] để thêm nhãn giá trị vào biểu đồ thanh trong tọa độ x và y này sẽ là i và y [i] không có gì ngoài chiều cao của thanh và vượt qua y [i] Chuỗi sẽ được hiển thị trên các tọa độ đã cho, I.E, i và y [i].
- Để thêm các nhãn giá trị ở trung tâm của chiều cao của thanh, chúng ta phải chia các tọa độ y cho 2 i.e, y [i] // 2 bằng cách làm điều này, chúng ta sẽ có được tọa độ trung tâm của mỗi thanh ngay khi Các vòng lặp chạy cho mỗi giá trị của i.
- Với điều này, chúng ta cũng có thể đặt tham số HA và BBOX là căn chỉnh theo chiều ngang phù hợp với các nhãn giá trị ở trung tâm của thanh khi chúng ta vượt qua HA = Center và Bbox hiển thị nhãn giá trị trong hộp hình chữ nhật được bảo hiểm cho điều này chúng ta phải Tạo một từ điển bằng cách sử dụng dict [] và trong việc vượt qua facecolor có màu mà chúng ta muốn và alpha nếu chúng ta muốn độ mờ mà chúng ta có thể đặt.
- Bây giờ sau khi tạo chức năng, chúng ta phải tạo chức năng chính từ nơi chương trình bắt đầu chạy.
- Tạo hoặc nhập dữ liệu mà biểu đồ thanh được vẽ.
- Cung cấp kích thước hình sao cho các giá trị và nhãn của biểu đồ hiển thị rõ ràng và không thể chồng chéo bạn có thể đặt phù hợp bằng cách sử dụng hàm plt.figure [] trong đó chuyển hình figsize làm tham số.
- Bây giờ hãy vẽ biểu đồ thanh bằng hàm plt.bar [] trong đó truyền các giá trị dữ liệu và màu phù hợp nếu bạn muốn hoặc màu mặc định sẽ được hiển thị.
- Bây giờ sau khi thực hiện biểu đồ thanh gọi hàm mà chúng tôi đã tạo để thêm nhãn giá trị.
- Đặt nhãn tiêu đề, nhãn trục X và nhãn trục y của biểu đồ/lô.
- Bây giờ trực quan hóa cốt truyện bằng cách sử dụng hàm plt.show [].
Ví dụ 1: Thêm nhãn giá trị trên biểu đồ thanh tại cài đặt thedefault. default setting.
Python
import
matplotlib.pyplot as plt
def
addlabels[x,y]:
for
i
in
Syntax: plt.text[x, y, s, ha, Bbox]0
Syntax: plt.text[x, y, s, ha, Bbox]1__12
Syntax: plt.text[x, y, s, ha, Bbox]4
Syntax: plt.text[x, y, s, ha, Bbox]5
Syntax: plt.text[x, y, s, ha, Bbox]6
Syntax: plt.text[x, y, s, ha, Bbox]7
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]8
import
0import
1
import
3
Syntax: plt.text[x, y, s, ha, Bbox]8
import
5import
6import
7____28import
7matplotlib.pyplot as plt
0matplotlib.pyplot as plt
1matplotlib.pyplot as plt
2matplotlib.pyplot as plt
3import
7matplotlib.pyplot as plt
5import
7matplotlib.pyplot as plt
7import
7matplotlib.pyplot as plt
9def
0
def
2
Syntax: plt.text[x, y, s, ha, Bbox]8
import
5def
5import
7def
7import
7def
9import
7addlabels[x,y]:
1matplotlib.pyplot as plt
1matplotlib.pyplot as plt
2addlabels[x,y]:
4import
7addlabels[x,y]:
6import
7addlabels[x,y]:
8def
0
1
3
5
6
7
9for
0
7
for
3for
4
7
for
7
Output:
Biểu đồ trên được vẽ trên các cài đặt mặc định, từ hình trên, chúng ta có thể quan sát rằng nhãn giá trị cho mỗi thanh được thêm vào trên cùng, nhưng chúng có mặt hơi ở phía bên phải của đỉnh của thanh và trên trục X Một số tên của các khóa học là chồng chéo.
Ví dụ 2: Thêm nhãn giá trị ở trung tâm của mỗi thanh trên biểu đồ thanh.
Python
import
matplotlib.pyplot as plt
def
addlabels[x,y]:
for
i
in
Syntax: plt.text[x, y, s, ha, Bbox]0
Syntax: plt.text[x, y, s, ha, Bbox]1__12
Syntax: plt.text[x, y, s, ha, Bbox]6
Syntax: plt.text[x, y, s, ha, Bbox]7
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]8
import
0import
1Syntax: plt.text[x, y, s, ha, Bbox]6
Syntax: plt.text[x, y, s, ha, Bbox]7
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]8
import
0import
1
import
3
Syntax: plt.text[x, y, s, ha, Bbox]8
import
5import
6import
7import
8matplotlib.pyplot as plt
1matplotlib.pyplot as plt
2matplotlib.pyplot as plt
0import
7matplotlib.pyplot as plt
3import
7matplotlib.pyplot as plt
5matplotlib.pyplot as plt
1
matplotlib.pyplot as plt
2matplotlib.pyplot as plt
7import
7matplotlib.pyplot as plt
9def
0
def
2
Syntax: plt.text[x, y, s, ha, Bbox]8
import
5def
5import
7def
7import
7def
9import
7addlabels[x,y]:
1matplotlib.pyplot as plt
1matplotlib.pyplot as plt
2addlabels[x,y]:
4import
7addlabels[x,y]:
6import
7addlabels[x,y]:
8def
0
Syntax: plt.text[x, y, s, ha, Bbox]41
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]1
Syntax: plt.text[x, y, s, ha, Bbox]44
import
7Syntax: plt.text[x, y, s, ha, Bbox]46
Syntax: plt.text[x, y, s, ha, Bbox]47
1
3
5
6
7
9for
0
7
for
3for
4
7
for
7
Output:
Trong biểu đồ trên, chúng ta có thể quan sát rằng các nhãn giá trị được căn chỉnh ở đỉnh trung tâm của mỗi thanh và trên trục X, tên của các khóa học chồng chéo cũng được hiển thị riêng.
Để sắp xếp các nhãn giá trị ở trung tâm, chúng tôi chỉ vượt qua một tham số trong hàm plt.text [] là trung tâm ha = 'trung tâm đó là sự liên kết ngang của văn bản và để hiển thị tên của các khóa học một cách riêng biệt, chúng tôi đã có Đã thêm hàm plt.figure [] trước khi tạo biểu đồ thanh trong đó chúng tôi đã vượt qua kích thước hình dưới dạng tham số và phần còn lại của mã là như nhau.
Ví dụ 3: Thêm nhãn giá trị bằng cách đặt chúng vào một hộp hình chữ nhật.
Python
import
matplotlib.pyplot as plt
def
addlabels[x,y]:
for
i
in
Syntax: plt.text[x, y, s, ha, Bbox]0
Syntax: plt.text[x, y, s, ha, Bbox]1__12
Syntax: plt.text[x, y, s, ha, Bbox]4
in
1Syntax: plt.text[x, y, s, ha, Bbox]8
in
3matplotlib.pyplot as plt
1Syntax: plt.text[x, y, s, ha, Bbox]83
Syntax: plt.text[x, y, s, ha, Bbox]84
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]86__
Syntax: plt.text[x, y, s, ha, Bbox]6
Syntax: plt.text[x, y, s, ha, Bbox]7
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]8
import
0import
1
import
3
Syntax: plt.text[x, y, s, ha, Bbox]8
import
5import
6import
7import
8matplotlib.pyplot as plt
1matplotlib.pyplot as plt
2matplotlib.pyplot as plt
0import
7matplotlib.pyplot as plt
3import
7matplotlib.pyplot as plt
5import
7matplotlib.pyplot as plt
7import
7matplotlib.pyplot as plt
9def
0
def
2
Syntax: plt.text[x, y, s, ha, Bbox]8
import
5def
5import
7def
7import
7def
9import
7addlabels[x,y]:
1import
7__54
Syntax: plt.text[x, y, s, ha, Bbox]41
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]1
Syntax: plt.text[x, y, s, ha, Bbox]44
matplotlib.pyplot as plt
1Syntax: plt.text[x, y, s, ha, Bbox]46
Syntax: plt.text[x, y, s, ha, Bbox]47
1
3
5
6
7
9for
0
7
for
3for
4
7
for
7
Output:
Trong ví dụ trên, chúng tôi đã thêm nhãn giá trị được đề cập trong hộp hình chữ nhật, cho điều này trong hàm plt.text [], chúng tôi phải vượt qua tham số bbox trong đó chúng tôi phải tạo từ điển và trong từ điển đó, chúng tôi có thể cung cấp facecolor về sự lựa chọn của chúng tôi và alpha mang lại độ mờ cho hộp mà chúng tôi có thể đặt cho phù hợp.
Ví dụ 4: Thêm nhãn giá trị ở trung tâm của chiều cao của mỗi thanh của biểu đồ thanh.
Python
import
matplotlib.pyplot as plt
def
addlabels[x,y]:
for
i
in
Syntax: plt.text[x, y, s, ha, Bbox]0
Syntax: plt.text[x, y, s, ha, Bbox]1__12
Syntax: plt.text[x, y, s, ha, Bbox]4
in
1Syntax: plt.text[x, y, s, ha, Bbox]8
in
3matplotlib.pyplot as plt
1Syntax: plt.text[x, y, s, ha, Bbox]6
Syntax: plt.text[x, y, s, ha, Bbox]7
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]8
import
0import
1
def
2
Syntax: plt.text[x, y, s, ha, Bbox]8
import
5def
5import
7def
7import
7def
9import
7addlabels[x,y]:
1import
7__54
Syntax: plt.text[x, y, s, ha, Bbox]41
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]1
Syntax: plt.text[x, y, s, ha, Bbox]44
matplotlib.pyplot as plt
1Syntax: plt.text[x, y, s, ha, Bbox]46
Syntax: plt.text[x, y, s, ha, Bbox]47
def
2
Syntax: plt.text[x, y, s, ha, Bbox]8
import
5def
5import
7def
7import
7def
9import
7addlabels[x,y]:
1matplotlib.pyplot as plt
1matplotlib.pyplot as plt
2addlabels[x,y]:
4import
7addlabels[x,y]:
6import
7addlabels[x,y]:
8def
0
Syntax: plt.text[x, y, s, ha, Bbox]41
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]1
Syntax: plt.text[x, y, s, ha, Bbox]44
matplotlib.pyplot as plt
1Syntax: plt.text[x, y, s, ha, Bbox]46
Syntax: plt.text[x, y, s, ha, Bbox]47
1
3
5
6
7
9for
0
7
for
3for
4
7
for
7
Output:
Trong ví dụ trên, chúng tôi đã thêm nhãn giá trị được đề cập trong hộp hình chữ nhật, cho điều này trong hàm plt.text [], chúng tôi phải vượt qua tham số bbox trong đó chúng tôi phải tạo từ điển và trong từ điển đó, chúng tôi có thể cung cấp facecolor về sự lựa chọn của chúng tôi và alpha mang lại độ mờ cho hộp mà chúng tôi có thể đặt cho phù hợp.
Ví dụ 4: Thêm nhãn giá trị ở trung tâm của chiều cao của mỗi thanh của biểu đồ thanh.
Python
import
matplotlib.pyplot as plt
def
addlabels[x,y]:
for
i
in
Syntax: plt.text[x, y, s, ha, Bbox]0
Syntax: plt.text[x, y, s, ha, Bbox]1__12
Syntax: plt.text[x, y, s, ha, Bbox]4
in
1Syntax: plt.text[x, y, s, ha, Bbox]8
in
3matplotlib.pyplot as plt
1Syntax: plt.text[x, y, s, ha, Bbox]83
Syntax: plt.text[x, y, s, ha, Bbox]84
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]86__
Syntax: plt.text[x, y, s, ha, Bbox]6
Syntax: plt.text[x, y, s, ha, Bbox]7
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]8
import
0import
1
def
2
Syntax: plt.text[x, y, s, ha, Bbox]8
import
5def
5import
7def
7import
7def
9import
7addlabels[x,y]:
1import
7__54matplotlib.pyplot as plt
2matplotlib.pyplot as plt
3import
7matplotlib.pyplot as plt
5import
7matplotlib.pyplot as plt
7import
7matplotlib.pyplot as plt
9def
0
def
2
Syntax: plt.text[x, y, s, ha, Bbox]8
import
5def
5import
7def
7import
7def
9import
7addlabels[x,y]:
1matplotlib.pyplot as plt
1matplotlib.pyplot as plt
2addlabels[x,y]:
4import
7addlabels[x,y]:
6import
7addlabels[x,y]:
8def
0
Syntax: plt.text[x, y, s, ha, Bbox]41
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]1
Syntax: plt.text[x, y, s, ha, Bbox]44
matplotlib.pyplot as plt
1Syntax: plt.text[x, y, s, ha, Bbox]46
Syntax: plt.text[x, y, s, ha, Bbox]47
def
41
Syntax: plt.text[x, y, s, ha, Bbox]8
Syntax: plt.text[x, y, s, ha, Bbox]89
7
3
5
6
7
9for
0
7
for
3for
4
7
for
7
Output:
Trong ví dụ trên, chúng tôi đã thực hiện điều tương tự như chúng tôi đã làm trong ví dụ 3 nhưng sự khác biệt duy nhất là chúng tôi đã chia tọa độ của Y cho 2 để các nhãn giá trị phải được hiển thị ở trung tâm của chiều cao của thanh và Ngoài ra, chúng tôi đã thay đổi màu của biểu đồ thanh thành màu đỏ bằng cách chuyển tham số màu trong hàm plt.bar [].