#python #plotly #data-visualization #plotly-python
Вопрос:
Мне нужно сделать простую диаграмму рассеяния на графике, но я сталкиваюсь с некоторыми проблемами форматирования. Вот код:
import plotly.graph_objects as go
import pandas as pd
df = pd.DataFrame({'x':[54,44,43,43,63,55,59],'y':[1259305,1295003,1888391,2000000,1500001,1123433,1459330]})
fig = px.scatter(x=df['x'], y=df['y'])
fig.update_layout(
autosize=False,
xaxis = dict(
tickmode = 'array',
tickvals = [0, 50, 100]
),
yaxis = dict(
tickmode = 'array',
tickvals = [df['y'].min(),df['y'].median(),df['y'].max()]))
fig.show()
Вот что он показывает:
Мне нужно, чтобы оси и линии сетки были равномерно распределены в соответствии со спецификациями, которые я предоставил для оси x и оси y, а не автоматически корректировались на основе распределения значений в данных.
Кто-нибудь, пожалуйста, может мне помочь?
Большое спасибо.
РЕДАКТИРОВАТЬ: Я хотел бы воспроизвести этот график matplotlib в графическом виде:
Ответ №1:
Чтобы указать индивидуально, пожалуйста, обратитесь к следующей ссылке для получения подробной информации о настройках. Я предполагаю, что вы хотите отобразить его как обычно, поэтому я отвечу.
fig = px.scatter(x=df['x'], y=df['y'])
fig.update_layout(
autosize=False,
xaxis = dict(
tickmode = 'array',
tickvals = [0, 50, 100]
),
yaxis = dict(
tickmode = 'array',
tickvals = [df['y'].min(),df['y'].median(),df['y'].max()]),
yaxis_tickformat=' ')
fig.show()
yaxis_tickformat='g'
x xais tick customize
xaxis = dict(
range=[0,100], # update
tickmode = 'array',
tickvals = [0, 50, 100],
),
Комментарии:
1. Если вы хотите отобразить его с запятой, вы можете сделать это так.
yaxis_tickformat=','
Если мой ответ поможет вам, пожалуйста, установите флажок, чтобы принять и вставить свой ответ.2. Но вы видите, какие неровные коробки? Это почему? Я хочу, чтобы все квадраты были одинакового размера и чтобы все 3 галочки тоже отображались на оси x.
3. Вы указываете минимальное, среднее и максимальное значения для оси y, поэтому медиана не всегда является серединой. Вы можете заменить его средним значением.
4. Когда я использую тот же код в matplotlib, я получаю результат, который ищу. Я собираюсь добавить его на скриншоты выше. Можете ли вы показать мне, как воспроизвести это в сюжете?
5. обновлен код и график