【发布时间】:2022-07-25 20:15:26
【问题描述】:
我正在尝试制作一个半圆形的极坐标图,就像代码随附的那样。我想添加一个 ColorBar,以显示哪些颜色与 'v' 的哪些值相关联,但我无法做到,因为我不太了解它是如何工作的。
import numpy as np
import matplotlib.pyplot as plt
from math import sin, radians
# Theta and R
azimuths = np.radians(np.linspace(180, 360, 20))
zeniths = np.arange(0, 1000, 10)
# Some constant
v0 = 1
A=2.4e-24
alpha=radians(10)
n=3
r, theta = np.meshgrid(zeniths, azimuths)
# Function to plot
v = v0 - 2*A/(n+1) * (0.5*917*9.8 * sin(alpha))**n * r**(n+1)
fig, ax = plt.subplots(subplot_kw=dict(projection='polar'))
plt.figure(1)
ax.set_thetamin(180)
ax.set_thetamax(360)
ax.contourf(theta, r, v, cmap='coolwarm')
plt.show()
我已经尝试添加
plt.imshow(v)
plt.colorbar()
它添加了一个颜色条,但它改变了情节。我想解决方案很简单,但我找不到,如果有人可以帮助我了解它是如何工作的,谢谢:)
【问题讨论】:
标签: python matplotlib