4
A
回答
1
下面是我知道的一种方法,虽然我认为创建自定义符号是一种更自然的方式来实现这一点。
from matplotlib import pyplot as PLT
# make up some data for this example
t = range(8)
s = 7 * t + 5
# make up some data labels which we want to appear in place of the symbols
x = 8 * "dp".split()
y = map(str, range(8))
data_labels = [ i+j for i, j in zip(x, y)]
fig = PLT.figure()
ax1 = fig.add_subplot(111)
ax1.plot(t, s, "o", mfc="#FFFFFF") # set the symbol color so they are invisible
for a, b, c in zip(t, s, data_labels) :
ax1.text(a, b, c, color="green")
PLT.show()
所以这把“DP1”,“DP2”,......在每个地方的原始数据符号的 - 在本质上创建自定义“文本符号”虽然我又不得不相信有一个更直接的在matplotlib中执行此操作的方式(不使用艺术家)。
3
为什么不只是让x值有些自动递增的数字,然后改变标签?
--jed
0
我无法找到一个方便的方式来实现这一点,所以我使出这个小助手功能。
import matplotlib.pyplot as p
def plot_classes(x, y, plotfun=p.scatter, **kwargs):
from itertools import count
import numpy as np
classes = sorted(set(x))
class_dict = dict(zip(classes, count()))
class_map = lambda x: class_dict[x]
plotfun(map(class_map, x), y, **kwargs)
p.xticks(np.arange(len(classes)), classes)
然后,调用plot_classes(data["class"], data["y"], marker="+")
应该按预期工作。
8
你应该尝试xticks
import pylab
names = ['anne','barbara','cathy']
counts = [3230,2002,5456]
pylab.figure(1)
x = range(3)
pylab.xticks(x, names)
pylab.plot(x,counts,"g")
pylab.show()
0
从你matplotlib 2.1可以在绘图函数使用字符串。
import matplotlib.pyplot as plt
x = ["Apple", "Banana", "Cherry"]
y = [5,2,3]
plt.plot(x, y)
plt.show()
+0
这是downvoted,但我upvoted它,因为它是迄今为止最紧凑的解决方案,在大多数情况下,赢得别破坏别的东西。 – RickG 2018-01-24 07:20:36
相关问题
- 1. 绘制值与matplotlib中的字符串?
- 2. 在matplotlib中绘制字符串列表
- 3. 在matplotlib中绘制特殊字符①①
- 4. 如何在matplotlib中绘制两组字符串的散点图
- 5. 在Matplotlib中绘制字形的阴谋
- 6. 在iPhone中绘制字符串
- 7. 在GLUT中绘制字符串
- 8. python matplotlib:从字符串索引数组绘制3d表面
- 9. Matplotlib:绘制离散值
- 10. 在Matplotlib中绘制瑕疵
- 11. 字符串不会绘制
- 12. 用BitmapFont绘制字符串
- 13. Matplotlib字符串xticks
- 14. 用UIImageView绘制NSString绘图字符串
- 15. 绘制与matplotlib
- 16. 绘制与Matplotlib
- 17. Matplotlib绘制框
- 18. 绘制的matplotlib
- 19. 绘制matplotlib
- 20. 绘制与matplotlib
- 21. 在C#网页上绘制字符串
- 22. 在jpanel上绘制字符串
- 23. 如何在BitmapData上绘制字符串
- 24. 在椭圆上绘制字符串
- 25. Openlayers - 在地图上绘制字符串
- 26. 在JPanel上绘制字符串
- 27. 在Matplotlib注释中的Unicode字符串
- 28. 使用Matplotlib从字典中绘制日期和相关值
- 29. 在画布上绘制文本并更新字符串值
- 30. 在数组中复制字符串值
谢谢你的回复。我发现这个:class matplotlib.ticker.FixedFormatter(seq),它可以让你指定一组字符串作为序列 – user299582 2010-03-23 21:05:56