matplotlib에서 내림차순 정렬 막대 차트를 만드는 방법
5575 단어 파이썬matplotlib시각화numpy
matplotlib.pyplot.bar
에서 numpy.array
형식 데이터의 막대 차트를 만드는 메서드.환경
방법
import numpy as np
import matplotlib.pyplot as plt
def plot_sorted_bar(figsize: tuple, x: np.array, y: np.array, title: str = None) -> None:
"""
入力値を降順ソートして棒グラフを作成するメソッド。
Parameters
----------
figsize : tuple
figsizeのtuple。
x : np.numpy
横軸(ラベル)。
y : np.numpy
縦軸(数値)。
title : str
グラフタイトル文字列。
"""
# yを昇順ソート後、逆順にindexを取得
sorted_index = np.argsort(y)[::-1]
# 棒グラフの可視化
plt.figure(figsize=figsize)
plt.bar(
#ラベルが数値だと自動ソートされるため、x軸は文字列型にしておく
x[sorted_index].astype('str'),
np.sort(y)[::-1]
)
if title is not None:
plt.title(title)
※메소드 인수의 引数: 型
이나 -> 型
는 형 힌트라고 불리고 있다. 명시적으로 인수의 형태를 기재하고 있는 것만으로, 명기 이외의 형태에서도 실행 에러는 되지 않는다.
※ numpy.array
로 사용되고 있다 [::-1]
는 배열을 역순으로 돌려주는 슬라이스. 예를 들어 [0,1,2,3][::-1]이라면 [3,2,1,0]이 반환됩니다.
실행 예
# サンプルデータ作成
x = np.array([1, 2, 3, 4, 5])
y = np.array([100, 200, 300, 400, 500])
# 可視化
plot_sorted_bar(
figsize=(20, 10),
x=x,
y=y,
title='bar plot'
)
참고
『[python] 슬라이스로 리버스! ! (슬라이스의 해설도 있어!)』
https://qiita.com/okkn/items/54e81346d8f35733ab5e#%E3%81%8A%E5%BE%85%E3%81%A1%E3%81%8B%E3%81%AD%E3%82%B9 %E3%83%A9%E3%82%A4%E3%82%B9%E3%81%A7%E3%83%AA%E3%83%90%E3%83%BC%E3%82%B9
Reference
이 문제에 관하여(matplotlib에서 내림차순 정렬 막대 차트를 만드는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yolo_kiyoshi/items/0a16fc0f07ff16d624a5
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
import numpy as np
import matplotlib.pyplot as plt
def plot_sorted_bar(figsize: tuple, x: np.array, y: np.array, title: str = None) -> None:
"""
入力値を降順ソートして棒グラフを作成するメソッド。
Parameters
----------
figsize : tuple
figsizeのtuple。
x : np.numpy
横軸(ラベル)。
y : np.numpy
縦軸(数値)。
title : str
グラフタイトル文字列。
"""
# yを昇順ソート後、逆順にindexを取得
sorted_index = np.argsort(y)[::-1]
# 棒グラフの可視化
plt.figure(figsize=figsize)
plt.bar(
#ラベルが数値だと自動ソートされるため、x軸は文字列型にしておく
x[sorted_index].astype('str'),
np.sort(y)[::-1]
)
if title is not None:
plt.title(title)
# サンプルデータ作成
x = np.array([1, 2, 3, 4, 5])
y = np.array([100, 200, 300, 400, 500])
# 可視化
plot_sorted_bar(
figsize=(20, 10),
x=x,
y=y,
title='bar plot'
)
참고
『[python] 슬라이스로 리버스! ! (슬라이스의 해설도 있어!)』
https://qiita.com/okkn/items/54e81346d8f35733ab5e#%E3%81%8A%E5%BE%85%E3%81%A1%E3%81%8B%E3%81%AD%E3%82%B9 %E3%83%A9%E3%82%A4%E3%82%B9%E3%81%A7%E3%83%AA%E3%83%90%E3%83%BC%E3%82%B9
Reference
이 문제에 관하여(matplotlib에서 내림차순 정렬 막대 차트를 만드는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yolo_kiyoshi/items/0a16fc0f07ff16d624a5
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(matplotlib에서 내림차순 정렬 막대 차트를 만드는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yolo_kiyoshi/items/0a16fc0f07ff16d624a5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)