![](/img/trans.png)
[英]Python - Coordinate transformation with polar scatter plot in matplotlib
[英]Add units to polar coordinate scatter plot in python
我有这个极地散点图,我想表明,通过用“cm”标记刻度,以厘米为单位测量距原点的距离。 关于如何做到这一点的任何建议?
import numpy as np
import matplotlib.pyplot as plt
r = R
theta = o
colors = theta
ax = plt.subplot(111, projection='polar')
c = plt.scatter(theta, r, cmap=plt.cm.hsv)
c.set_alpha(0.75)
plt.show()
简单地说,使用plt.set_ylabel
添加标签似乎不起作用,因为它始终位于原点。 不过,有一个简单的方法。 您可以在任意位置使用ax.text
引入文本。 我的建议是,将tick标签从数据中移开,以确保标签不会被误解,然后按如下方式引入标签:
import numpy as np
import matplotlib.pyplot as plt
ax = plt.subplot(111, projection="polar")
ax.set_rlabel_position(270) # Moves the tick-labels
ax.text(0.52, 0.25, "cm", transform=ax.transAxes) # Adds text
plt.show()
我做了类似的事,应该工作:
plt.yticks(np.arange(0,np.amax(r),3),["%.1f cm" % x for x in np.arange(0,np.amax(r),3)])
在np.arange(0,np.amax(r),3)
,0只是图中你想要的最小刻度,3是你想要的刻度应该是。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.