如何固定图形的轴以进行绘图

Posted

技术标签:

【中文标题】如何固定图形的轴以进行绘图【英文标题】:How to fix the axes of a graph for plotly 【发布时间】:2021-12-03 01:54:09 【问题描述】:

我正在为东京创建一个图表,绘制随时间变化的租金。当我用美元绘制日期时,它起作用了。但是,当我针对当地货币(日元)进行绘图时,它们 Y 轴的顺序会变得混乱。我不太确定如何解决它。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import plotly.express as px
%matplotlib inline
df = pd.read_csv('Tokyo rent (One Bedroom apartment in the city centre).csv')
fig = px.line(df, x = 'Date 2.0', y = 'Rent(USD)', title='Tokyo Rent Price (USD)')
fig.show()

fig = px.line(df, x = 'Date 2.0', y = 'Rent(Local Currency)', title='Tokyo Rent Price (Yen)')
fig.show()

我的 CSV 文件

Year    Rent(USD)   Date    Rent(Local Currency)    Date 2.0
2017    1223.4  17/03/17    129,594.59              2017-03-17
2017    1070.24 28/10/17    121,656.25              2017-10-28
2018    1104.51 23/01/18    121,689.66              2018-01-23
2018    1030.61 22/10/18    116,270.83              2018-10-22
2019    1124.33 14/06/19    122,062.50              2019-06-14
2019    1129.6  20/06/19    121,255.32              2019-06-20
2019    1129.9  21/06/19    121,255.32              2019-06-21
2020    1198.53 23/03/20    128,701.75              2020-03-23
2020    1183.66 01/07/20    127,195.65              2020-07-01
2020    1213.38 17/09/20    127,466.67              2020-09-17
2020    1168.37 05/10/20    123,578.95              2020-10-05
2020    1192.5  11/11/20    125,525.00              2020-11-11
2020    1228.34 02/12/20    128,312.50              2020-12-02
2021    1220    06/03/21    132,200.00              2021-03-06
2021    1342.84 29/08/21    147,524.40              2021-08-29
2021    1284.65 14/10/21    145,696.54              2021-10-14

【问题讨论】:

【参考方案1】:

Rent(Local Currency) 值中的逗号导致 pandas 将它们作为字符串导入。可能最好的解决方案是将thousands=',' 参数添加到read_csv

df = pd.read_csv('Tokyo rent (One Bedroom apartment in the city centre).csv', thousands=',')

【讨论】:

看起来很棒!要删除数百万,您是否写了millions=',' 和数十亿,billions=',' 等等? thousands=',' 将处理数百万、数十亿和更大的数字 :) 我猜它是指连续的一千倍数之间的分隔符。 太棒了。这很有帮助!

以上是关于如何固定图形的轴以进行绘图的主要内容,如果未能解决你的问题,请参考以下文章

Matplotlib 循环遍历 seaborn 图中的轴以获取多个子图

matlab gui 怎样在指定的轴绘图

如何在R / Shiny中将相机方向固定在交互式3D绘图中

如何使用固定位置控制 igraph 绘图布局?

matlab绘图中坐标轴如何变粗

Matlab - 无法显示手动设置的轴