繁体   English   中英

在python中将单位添加到极坐标散点图中

[英]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()

结果如下: PolarImage

我做了类似的事,应该工作:

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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM