플롯 배경색을 변경하는 방법
matplotlib에서 산점도를 만들고 있으며 실제 그림의 배경을 검은색으로 변경해야 합니다.다음을 사용하여 플롯의 얼굴 색상을 변경하는 방법을 알고 있습니다.
fig = plt.figure()
fig.patch.set_facecolor('xkcd:mint green')
나의 문제는 이것이 플롯 주변 공간의 색을 바꾼다는 것이다.플롯의 실제 배경색을 변경하려면 어떻게 해야 합니까?
다음 방법 중 하나를 사용하여 작성한 객체의 메서드를 사용합니다.
그림과 축/es를 함께 작성했습니다.
fig, ax = plt.subplots(nrows=1, ncols=1)
그림을 작성한 후 나중에 축/es
fig = plt.figure() ax = fig.add_subplot(1, 1, 1) # nrows, ncols, index
스테이트풀 API를 사용하였습니다(여러 줄 이상의 작업을 하고 있는 경우, 특히 플롯이 여러 개 있는 경우, 위의 객체 지향 메서드를 사용하면 특정 그림을 참조하거나 특정 축에 플롯하거나 둘 중 하나를 커스터마이즈할 수 있으므로 생활이 쉬워집니다).
plt.plot(...) ax = plt.gca()
그럼, 을 사용할 수 있습니다.set_facecolor
:
ax.set_facecolor('xkcd:salmon')
ax.set_facecolor((1.0, 0.47, 0.42))
어떤 색상을 선택할 수 있는지에 대한 리프레셔:
matplotlib.syslog
Matplotlib은 다음 형식을 인식하여 색상을 지정합니다.
- 부동값의 RGB 또는 RGBA 태플
[0, 1]
(예:(0.1, 0.2, 0.5)
또는(0.1, 0.2, 0.5, 0.3)
);- 16진수 RGB 또는 RGBA 문자열(예:
'#0F0F0F'
또는'#0F0F0F0F'
);- 플로트 값의 문자열 표현
[0, 1]
그레이 레벨의 경우 포함(예:'0.5'
);- 중 하나
{'b', 'g', 'r', 'c', 'm', 'y', 'k', 'w'}
;- X11/CSS4 색상명
- xkcd 색조사의 이름, 앞에 붙이는 이름
'xkcd:'
(예:'xkcd:sky blue'
);- 중 하나
{'tab:blue', 'tab:orange', 'tab:green', 'tab:red', 'tab:purple', 'tab:brown', 'tab:pink', 'tab:gray', 'tab:olive', 'tab:cyan'}
T10' 범주형 팔레트의 Tabau 색상(기본 색상 주기)입니다.- "CN" 색상 사양, 즉 "C" 뒤에 기본 속성 사이클에 대한 색인인 한 자리 숫자(
matplotlib.rcParams['axes.prop_cycle']
). 아티스트 작성 시 인덱스가 실행되며 사이클에 컬러가 포함되지 않으면 기본값은 검은색입니다."CN"을 제외한 모든 색상 문자열 사양은 대소문자를 구분하지 않습니다.
한 가지 방법은 스크립트 내에서 축 배경색의 기본값을 수동으로 설정하는 것입니다(matplotlib 사용자 정의 참조).
import matplotlib.pyplot as plt
plt.rcParams['axes.facecolor'] = 'black'
이것은 특정의 배경색을 변경하는 Nick T의 방법과는 대조적입니다.axes
물건.유사한 스타일로 여러 개의 다른 그림을 만들고 계속 다른 그림을 변경하지 않으려는 경우 기본값을 재설정하는 것이 유용합니다.axes
물건들.
주의: 다음 항목에 상당합니다.
fig = plt.figure()
fig.patch.set_facecolor('black')
질문 내용은 다음과 같습니다.
plt.rcParams['figure.facecolor'] = 'black'
이런 거?를 사용합니다.axisbg
키워드subplot
:
>>> from matplotlib.figure import Figure
>>> from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas
>>> figure = Figure()
>>> canvas = FigureCanvas(figure)
>>> axes = figure.add_subplot(1, 1, 1, axisbg='red')
>>> axes.plot([1,2,3])
[<matplotlib.lines.Line2D object at 0x2827e50>]
>>> canvas.print_figure('red-bg.png')
(허용, 산점도, 검은색 배경 없음).
간단한 답변:
ax = plt.axes()
ax.set_facecolor('silver')
「 」를 가지고 있는 axes
Nick T의 답변에서와 같이 오브젝트도 사용할 수 있습니다.
ax.patch.set_facecolor('black')
가장 쉬운 것은 플롯을 작성할 때 색상을 지정하는 것입니다.
fig1 = plt.figure(facecolor=(1, 1, 1))
또는
fig1, (ax1, ax2) = plt.subplots(nrows=1, ncols=2, facecolor=(1, 1, 1))
하는 것 중 하나는 '먹다'를 사용하는 입니다.ax.set_axis_bgcolor("red")
MatPlotLib > = v2.0에서는 작동하지 않습니다.
,, 음, 음, 음, 다, 다, 다, 다, 다, 다, 또, there, there, there, there, there, there, there, thereax.patch.set_facecolor("red")
( MatPlotLib v1 . 5 2 v2 . 2 ) 。하지만, 는, 「v2.0+」를 사용하는 .
ax.set_facecolor("red")
NickT의 답변에 덧붙여, 배경 프레임을 「없음」으로 설정해 삭제할 수도 있습니다.https://stackoverflow.com/a/67126649/8669161
import matplotlib.pyplot as plt
plt.rcParams['axes.facecolor'] = 'none'
이 방법은 일부 사용자에게 유용할 수 있습니다.
그림 주위의 배경색을 변경하려면 , 다음의 순서를 사용할 수 있습니다.
fig.patch.set_facecolor('white')
이 대신:
다음과 같이 표시됩니다.
물론 원하는 색상을 설정할 수 있습니다.
추신. 우연히 두 그림 사이에 차이가 없는 경우 다크 모드를 사용하여 StackOverflow를 살펴보십시오.
언급URL : https://stackoverflow.com/questions/14088687/how-to-change-plot-background-color
'source' 카테고리의 다른 글
파라미터가 리터럴 null 값인 경우 오버로드된 메서드는 어떻게 선택됩니까? (0) | 2022.09.12 |
---|---|
도커 볼륨 mariadb에 루트 권한이 있습니다. (0) | 2022.09.12 |
PEP8에 준거하여 E501을 방지하는 매우 긴 문자열 작성 방법 (0) | 2022.09.12 |
String을 사용하여 JSON 개체를 만드는 방법 (0) | 2022.09.12 |
Vue.js - 필터링된 scopedSlot에서 슬롯을 동적으로 만듭니다. (0) | 2022.09.12 |