Добавьте определенное значение к оси, используя XlsxwriterPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Добавьте определенное значение к оси, используя Xlsxwriter

Сообщение Anonymous »

Код: Выделить всё

import xlsxwriter

# Create a new Excel workbook and add a worksheet
workbook = xlsxwriter.Workbook('chart_with_trendline.xlsx')
worksheet = workbook.add_worksheet()

# Sample data
x_data = [1, 2, 3, 4, 5, 6, 7]  # Adding more values to x_data
y_data = [5, 4, 3, 2, 1, 2, 3]  # Adding more values to y_data

gearChange = 2 #index 2

line_x_data = []
line_y_data = []

line_x_data.append(x_data[gearChange])
line_y_data.append(y_data[gearChange])
line_x_data.append(x_data[gearChange])
line_y_data.append(0)

# Write data to the worksheet
worksheet.write_column('A1', x_data)
worksheet.write_column('B1', y_data)

# Write line data to worksheet
worksheet.write_column('C1', line_x_data)
worksheet.write_column('D1', line_y_data)

# Add a chart object
chart = workbook.add_chart({'type': 'scatter'})

# Add scatter series to the chart
chart.add_series({
'name': 'Y1',
'categories': '=Sheet1!$A$1:$A$7',
'values': '=Sheet1!$B$1:$B$7',
'marker': {'type': 'circle'}
})

# Add line series to the chart
chart.add_series({
'categories': '=Sheet1!$C$1:$C$2',  # Adjusted for new data range
'values':     '=Sheet1!$D$1:$D$2',  # Adjusted for new data range
'line': {'type': 'linear'}     # Adding linear trendline
})

# Set chart title and axis labels
chart.set_title({'name': 'Chart With Trendline'})
chart.set_x_axis({'name': 'X Axis'})
chart.set_y_axis({'name': 'Y Axis'})

# Insert the chart into the worksheet
worksheet.insert_chart('E2', chart)

# Close the workbook
workbook.close()
Изображение

Вот мой код на данный момент.

Я хочу добавить значение 3 к оси X, так как это точка пересечения X линии, которую я рисую.

Я просмотрел документацию и не нашел ни одной функции, позволяющей мне это сделать. Я также спросил ChatGPT, но безуспешно.

Если есть лучший способ построить вертикальную линию в конкретной точке переключения передач, это тоже было бы здорово, поскольку я застрял на этом на несколько дней (часть более крупного проекта). Буду очень признателен за любую помощь.
Я пробовал изменить строку:

Код: Выделить всё

chart.set_x_axis({'name': 'X Axis'})
Чтобы это выглядело так:

Код: Выделить всё

chart.set_x_axis({'name': 'X Axis', 'major_tick_values': line_x_data})
Чтобы получить 3 по оси X, но это не сработало.


Подробнее здесь: https://stackoverflow.com/questions/782 ... xlsxwriter
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»