我正在尝试使用matplotlib scatterplot绘制字符串与整数。
我的数据集如下所示:
Name Utilisation
manhit 10
movers 9
mayer 9
fabcom 8
freshimp 7
我尝试使用以下代码(参考之前的帖子之一)但由于某种原因它不起作用:
import matplotlib.pyplot as plt
from matplotlib.ticker import FuncFormatter, MultipleLocator
import numpy as np
x_data = np.array(dftail.Utilisation)
print x_data
y_data = np.array(dftail.Name)
print y_data
def ord_to_char(v, p=None):
return chr(int(v))
fig, ax = plt.subplots()
ax.plot(x_data, y_data, 'x')
ax.xaxis.set_major_formatter(FuncFormatter(ord_to_char))
ax.xaxis.set_major_locator(MultipleLocator(1))
plt.show()
我很感激任何建议。非常感谢。
答案 0 :(得分:2)
您无法直接将分类值放入绘图中。相反,您可以绘制一个升序列表,然后将ticklabels设置为列表中的名称。
public static class AutofacConfig
{
public static void Configure()
{
ContainerBuilder builder = new ContainerBuilder();
ConfigurationBuilder config = new ConfigurationBuilder();
config.AddXmlFile(@"Config\Autofac.config");
IContainer container = builder.Build();
AutofacServiceLocator serviceLocator = new AutofacServiceLocator(container);
ServiceLocator.SetLocatorProvider(() => serviceLocator);
}
}