Hướng dẫn animated pie chart in python - biểu đồ hình tròn hoạt hình trong python

Bạn sẽ muốn sử dụng FuncAnimation. Thật không may, biểu đồ hình tròn không có chức năng cập nhật; Mặc dù có thể cập nhật các nêm với dữ liệu mới, nhưng điều này có vẻ khá cồng kềnh. Do đó, có thể dễ dàng hơn để xóa các trục trong mỗi bước và vẽ một biểu đồ hình tròn mới cho nó.

import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation

colors = ['gold', 'yellowgreen', 'lightcoral', 'lightskyblue', 'limegreen', 
          'red', 'navy', 'blue', 'magenta', 'crimson']
explode = [0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, .01]
labels = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
nums = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

fig, ax = plt.subplots[]

def update[num]:
    ax.clear[]
    ax.axis['equal']
    str_num = str[num]
    for x in range[10]:
        nums[x] += str_num.count[str[x]]
    ax.pie[nums, explode=explode, labels=labels, colors=colors, 
            autopct='%1.1f%%', shadow=True, startangle=140]
    ax.set_title[str_num]

ani = FuncAnimation[fig, update, frames=range[100], repeat=False]
plt.show[]

Ngày 10 tháng 1 năm 2021 tháng 14, 2021

Giới thiệu

Nếu bạn đang làm việc như một nhà phân tích dữ liệu hoặc nhà khoa học dữ liệu trong một thời gian, bạn có thể đã biết cách sử dụng matplotlib để trực quan hóa và trình bày dữ liệu trong các biểu đồ khác nhau. Thư viện Matplotlib cung cấp một mô -đun hoạt hình để tạo biểu đồ động để làm cho dữ liệu của bạn hấp dẫn hơn, tuy nhiên bạn vẫn cần một vài bước để định dạng dữ liệu của bạn và khởi tạo và cập nhật dữ liệu vào bảng xếp hạng. Trong bài viết này, tôi sẽ chứng minh cho bạn một thư viện Python khác-Pandas-ALIVE cho phép bạn tạo biểu đồ hoạt hình trực tiếp từ dữ liệu Pandas mà không cần chuyển đổi định dạng nào.

Điều kiện tiên quyết

Bạn có thể cài đặt thư viện này qua lệnh PIP như sau đây nếu bạn chưa có nó trong môi trường làm việc của mình:

Nó cũng sẽ cài đặt các phụ thuộc của nó như gấu trúc, gối và numpy, v.v.

Để trình diễn các ví dụ sau này của chúng tôi, hãy để lấy một số dữ liệu covid-19 mẫu từ Internet, bạn có thể tải xuống từ đây.

Trước khi bắt đầu, chúng tôi sẽ nhập tất cả các mô -đun cần thiết và thực hiện xem trước dữ liệu mẫu của chúng tôi:

import pandas as pd
import pandas-alive

df_covid = pd.read_excel["covid-19 sample data.xlsx"]

Dữ liệu chúng tôi sẽ làm việc sẽ là một cái gì đó tương tự như dưới đây :

Bây giờ với tất cả đã sẵn sàng, hãy để đi sâu vào các ví dụ mã.

Tạo cuộc đua biểu đồ thanh hoạt hình

Biểu đồ thanh là cách đơn giản nhất để trình bày dữ liệu, nó có thể được vẽ theo cách ngang hoặc dọc. Hãy để một định dạng nhỏ trên dữ liệu của chúng tôi để chúng tôi có thể sử dụng ngày làm trục ngang hoặc dọc để trình bày dữ liệu.

df_covid = df_covid.pivot[index="date", columns="location", values="total_cases"].fillna[0]

Để tạo biểu đồ thanh hoạt hình theo chiều ngang, bạn chỉ cần gọi Plot_animated theo bên dưới:plot_animated as per below:

df_covid.plot_animated["covid-19-h-bar.gif", period_fmt="%Y-%m", title="Covid-19 Cases"]

Hàm Plot_animated có các tham số mặc định Kiểu = Race Race và định hướng = Hồi Hv, do đó gif đầu ra sẽ được tạo theo dưới đây:plot_animated function has default parameters kind=”race” and orientation = “h”, hence the output gif would be generated as per below:

Bạn có thể thay đổi các giá trị mặc định của hai tham số này để tạo ra một cuộc đua biểu đồ thanh dọc:

df_covid.plot_animated["covid-19-v-bar.gif", 
                     period_fmt="%Y-%m", 
                     title="Covid-19 Cases", 
                     orientation='v']

Biểu đồ đầu ra sẽ là một cái gì đó tương tự như dưới đây:

Tạo biểu đồ dòng hoạt hình

Để tạo biểu đồ dòng hoạt hình, bạn chỉ cần thay đổi loại tham số = dòng dòng theo cách dưới đây:

df_covid.plot_animated["covid-19-line.gif",
                     title="Covid-19 Cases",
                     kind='line',
                     period_fmt="%Y-%m",
                     period_label={
                         'x':0.25,
                         'y':0.9,
                         'family': 'sans-serif',
                         'color':  'darkred'
                    }]

Có một số tham số khác, chẳng hạn như intion_label để kiểm soát định dạng của nhãn hoặc n_visible để ràng buộc có bao nhiêu bản ghi được hiển thị trên biểu đồ. Biểu đồ đầu ra sẽ theo phần dưới đây:period_label to control the format of the label, or n_visible to constrain how many records to be shown on the chart. The output chart would be as per the below:

Tạo biểu đồ hình tròn hoạt hình

Tương tự như các biểu đồ khác, bạn có thể tạo biểu đồ hình tròn đơn giản với các tham số bên dưới:

df_covid.plot_animated[filename='covid-19-pie-chart.gif',
                     kind="pie",                     
                     rotatelabels=True,
                     tick_label_size=5,
                     dpi=300,
                     period_fmt="%Y-%m",
                     ]

Bạn cũng có thể sử dụng các tham số Axes.pie khác để xác định hành vi biểu đồ hình tròn. Đầu ra từ mã trên sẽ là:

Tạo biểu đồ phân tán

Tạo biểu đồ phân tán hoặc biểu đồ bong bóng hơi phức tạp so với các biểu đồ khác, nhưng đối với dữ liệu mẫu của chúng tôi, việc hình dung nó trong loại biểu đồ này không có ý nghĩa gì nhiều. Ví dụ.

df_covid.plot_animated[filename='covid-19-scatter-chart.gif',
                     kind="scatter",
                     period_label={'x':0.05,'y':0.9},
                     steps_per_period=5
                    ]

Bạn sẽ thấy đầu ra tương tự như biểu đồ dòng:

Sự kết luận

Pandas-Alive cung cấp các cách rất thuận tiện để tạo ra tất cả các loại biểu đồ hoạt hình từ khung dữ liệu gấu trúc với sự hỗ trợ cơ bản từ thư viện matplotlib. Nó chấp nhận hầu hết các tham số bạn đã sử dụng trong matplotlib, vì vậy bạn không phải học rất nhiều điều mới trước khi áp dụng nó cho biểu đồ của mình.

Có nhiều tính năng khác ngoài cơ sở tôi đã đề cập ở trên, chẳng hạn như cung cấp các số liệu tùy chỉnh, tạo biểu đồ không gian địa lý hoặc kết hợp nhiều biểu đồ hoạt hình trong một chế độ xem. Bạn có thể kiểm tra thêm các ví dụ từ trang dự án của nó.

Bài viết bằng cách sử dụng thẻ trong pythongif trong pythonpandas-alive sốnganimated charts in pythongif in pythonpandas-alive

Bạn cũng có thể thích

Làm thế nào để bạn tạo một biểu đồ hoạt hình trong Python?

3- Ví dụ hoạt hình dòng..
Nhập nhập ngẫu nhiên Matplotlib từ matplotlib nhập hoạt hình nhập matplotlib. pyplot như plt từ matplotlib. ....
y1 = [ngẫu nhiên. randint [0,4]+[i ** 1.4]/[ngẫu nhiên. ....
FIG = plt. Hình [FIGSIZE = [12,8]] trục = Hình. ....
def animate [i]: x. ....
ANI = funcanimation [fig = fig, func = animate, intercal = 100] #ani.show [].

Làm thế nào để bạn làm động một biểu đồ hình tròn?

Làm thế nào để tạo biểu đồ hình tròn thú vị trong PowerPoint..
Chuyển đến menu chèn ..
Bấm vào biểu đồ ..
Chuyển đến menu biểu đồ hình tròn và chọn loại biểu đồ bạn muốn sử dụng. ....
Bạn có thể điều chỉnh giá trị của biểu đồ trong cửa sổ giống như Excel này ..
Đi đến hoạt hình ..
Chọn bánh xe. ....
Vẫn trong menu hoạt hình, nhấp vào khung hoạt hình ..

Python có thể tạo ra hoạt hình không?

Bạn có thể tạo hình ảnh động trong Python bằng cách gọi một hàm cốt truyện bên trong một vòng lặp [thường là một vòng lặp].Các công cụ chính để tạo hình ảnh động trong Python là matplotlib.hoạt hình.Lớp cơ sở hoạt hình, cung cấp một khung xung quanh mà chức năng hoạt hình được xây dựng.. The main tools for making animations in Python is the matplotlib. animation. Animation base class, which provides a framework around which the animation functionality is built.

Bài Viết Liên Quan

Chủ Đề