我试图使用xlsxwriter绘制不规则数据,其中x值是无序的而不是唯一的,例如0,1,0,-1,0。使用图表类型' line'并添加包含两个'类别'的选项的系列(对于x轴)和'值' (y轴)产生一个图表,其x轴标签的原始顺序为0,1,0,-1,0,但我希望该图的常规x轴为-1,0和1 ,绘制的线形成一个封闭区域。这可以通过xlsxwriter实现吗?只需在Excel 2016中根据类似数据绘制图表,即可获得所需的行为。
答案 0 :(得分:1)
答案 1 :(得分:0)
在Excel中,您使用的line
图表类型只能绘制固定类别。您需要使用的是scatter
图表类型,用于绘制X-Y数据。
这样的事情:
import xlsxwriter
workbook = xlsxwriter.Workbook('chart.xlsx')
worksheet = workbook.add_worksheet()
# Create a new Chart object.
chart = workbook.add_chart({'type': 'scatter',
'subtype': 'straight_with_markers'})
# Write some data to add to plot on the chart.
worksheet.write_column('A1', [0, 1, 0, -1, 0])
worksheet.write_column('B1', [1, 2, 3, 2, 1])
# Configure the charts.
chart.add_series({
'categories': '=Sheet1!$A$1:$A$5',
'values': '=Sheet1!$B$1:$B$5',
})
# Insert the chart into the worksheet.
worksheet.insert_chart('D1', chart)
workbook.close()